いよいよwebサイトが完成! いざアップロードするぞ~!! と思ったら、今回.htaccessに記述した内容が原因で、ローカル環境と本番環境でデフォルトドキュメントの関係上、動作に差がでそうなことに気づき……。
既に公開しているサイトのリニューアルだったので、改めて本番と同じサーバーにテスト環境を作ることにしました。
(ローカルの開発環境はXAMPP、本番サーバーはロリポップを使用しています。)
今回はテスト環境ということで、①クローラーの回避、②基本的に特定の人のみ閲覧可能な状態にするためにBASIC認証の設定を行います。
BASIC認証の特徴
- ディレクトリ単位でのアクセス制限が可能
- クローラーもアクセスできない
- あくまでも簡易的な認証の仕組み(セキュリティレベルが低い)
本番サーバーでテストするときの注意点としては、コンテンツが本番環境と重複してしまうため、SEO的によろしくないのでクローラーがアクセスできないようにしておく必要があります。クローラー回避だけならnoindexでもいいんですが、出来上がって安心してうっかりコードの確認をせずそのまま本番にあげてしまうという凡ミスがありえないとは言えないので、BASIC認証がオススメです。
(うっかりやってしまうといつまでたっても検索欄にでてきません……。)
特徴でも挙げていますが、BASIC認証はセキュリティレベルとしては低いものになるので、あくまでも簡易的な認証です。
準備
今回はサブドメイン(hoge.example.com)を取得して、ルートディレクトリに新たにディレクトリ(hoge)を作っていきたいと思います。
サブドメインの作成
サブドメインを設定します。
ロリポップの場合はサーバーの管理・設定>サブドメイン設定>新規作成から作成が可能です。
今回はhogeというサブドメインを作成します。
ここからはhoge.example.comというURLで説明をしていきます。
また、公開フォルダはhogeとしておきます。
独自SSL証明書の導入
サブドメインの設定をしたらSSLの設定も忘れずに。
ロリポップの場合 セキュリティ>独自SSL証明書導入
2種類のファイルを作る
.htaccessと.htpasswdというファイルを作ります。
.htaccess
AuthType Basic
AuthGroupFile /dev/null
AuthName "テスト環境"
AuthUserFile ".htpasswdファイルの場所(フルパス)"
require valid-user
ロリポップの場合はアカウント情報からフルパスが確認できます。今回は.htpasswdを公開フォルダ「hoge」にアップロードするので、AuthUserFileにはアカウント情報に記載されているフルパス/hoge/.htpasswdと記載します。
.htpasswd
ユーザー名:暗号化されたパスワード
複数のユーザーを設定する場合はどんどん下に書き足していきます。
パスワードは暗号化する必要があるので、「htパスワード 暗号化」等で検索をして出てきたサイトを利用して暗号化していきます。
例
ユーザー名test パスワードtest123の場合
test:ji.7KJLDQkS9s
アップロードする
.htaccessと.htpasswdができあがったら、保存してアップロードします。
どちらも制限をかけるディレクトリ、公開フォルダ「hoge」にアップロードします。
ファイルのパーミッションは604にしましょう。
アップロードが完了したら動作確認をして、ひとまず本番サーバーでのテスト環境の準備は終了です。
参考



コメント