Share on FacebookTweet about this on TwitterShare on Google+

運用しているサイトのほんの一部をデザインを運用中に少し変えてテストを見せるときどうしますか?

  • このサイドバーの一番下にこんなの入れたらどんな感じに見える?
  • メインのニュースの幅をもう少しせまくして罫線いれたらどんな感じ?

そんな時にさぼり気味なデザイナーが使える一度書いておけば後で楽なhtaccessの使い方があります。
テストサーバーを構築しデータをクローン、そちらは認証を設け確認できたら本番サーバーへデプロイなんてのがでれきばいいのはわかりますが、お店や小さな会社の共用のレンサバで運用しているサイトでバナーのデザイン2パターン見せるのにそんな環境は用意する気がおきません。画像のパスやCSSとの相対パスを考えても、一番楽なのは同じ階層に

index.php
index_test.php

というように複製してしまって、その内容を更新して確認してもらうのが楽ですよね。
WordPressなどのCMSで作っているサイトでも1ページだけの一部を2パターン見せたいなんていう時、そのページをブラウザで表示して表示階層と同じ階層に少し違うファイル名でhtml保存して更新すると楽です。
ベーシック認証のかかっているディレクトリーを作り。ファイルを移動させて更新するのは以外とCSSのパスが違ったり反映する時にミスも増えます。
ただ、URLを入力するとそのまま見えるのは新発売の製品バナーなどだと見えてしまうのは問題です。

そこで、さぼり気味なデザイナーなので場所ではなく、ファイル名の最後に「_test」という名前になっていれば場所がどこであってもベーシック認証がかかる設定になっていれば便利ですよね。
そんな時は.htaccessにこんな内容を追記します。

AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /var/www/dat/.htpasswd

<Files ~ "_test\.(php|html)$" >
require valid-user
</Files>

.htpasswdはフルパスで指定します。
中身は

ユーザー名:暗号化されたパスワード

という形式で記述されています。
SSHでログインできれば、htpasswdで作成できますが
ここはさぼり気味なデザイナーですのでhtaccesseditorさんのウェブページで作ってしまいましょう。

スクリーンショット 2015-07-02 13.42.24

できあがったテキストを記述した.htpasswdファイルをサーバーに設置します。
できれば、ウェブで閲覧できない領域におくほうがベターです。

この設定をすることでサイトの中のどこでも、ファイル名の最後が「_test.php」もしくは「_test.html」になっていれば
index_test.php
access_test.php
profile_test.html
campany/profile_test.php
profile/top/summer_test.html
など、どの階層でもベーシック認証がかかることで、日々の仕事で少し楽ができるかもしれません。