• 最終更新日:

サイトにアクセス制限をかけてクライアントに見せる方法(Basic認証)

サイトにBasic認証でアクセス制限する方法

サイトにアクセス制限をかけてクライアントに確認してもらうにはBasic認証が便利です。本番環境にサイトをアップしたあとでも、事前に設定したユーザー名とPASSを入力しなければ見ることができません。アクセス制限している間は検索エンジンからindexされないのも良いですね。

サイトにBasic認証でアクセス制限をかける方法

流れとしては2つのファイルを作り、本番環境に移したサイトのディレクトリへアップするだけです。以下の流れに沿って試してみてください。

 

ステップ1:メモ帳からhtaccess.txtを作成する

Windowsならメモ帳、Macならテキストエディットからhtaccessと名前をつけてファイルを作成します。Macのテキストエディットを使う場合はかならず、テキスト形式で保存し、エンコーディングもunicode(utf-8)を選択してください。やり方がわからない方は以下の記事を参考にしてみましょう。

テキストエディットでテキスト形式で保存できない (Macの使い方、操作方法)

 

htaccess.txtを作成したら下のコードをコピペします。


<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
AuthUserFile /home/サーバID/www/hogehoge.com/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user 
order deny,allow

 

ピンク色の部分はサイトへのフルパスになります。フルパスとはサーバー上のパスなので、いつも目にしているパスとは違います。

調べ方はまずメモ帳などに以下のコードをコピペします。


<?php
echo __FILE__;
?>

 

コピペしたらファイル名をcheck、拡張子をphpにして保存します。このcheck.phpを知りたいディレクトリにアップして、アクセスするとフルパスがわかります。

例)https://hoge.com/sample

例えばsampleまでのフルパスが知りたいとします。先ほど作成したcheck.phpをsampleのディレクトリにアップロードして、ブラウザでhttps://hoge.com/sample/check.phpとアクセスするとフルパスが表示されます。

ピンク色の部分をフルパスに書き換えたらパスの最後は.htpasswdで終わるようにしましょう。

 

ステップ2:メモ帳からhtpasswd.txtを作成する

次はユーザー名とPASSを保存するためのファイルを作ります。先ほどと同じようにメモ帳などからhtpasswdと名前をつけて保存します。今回はユーザー名とPASSを以下のようにします。

ユーザー名:test
PASS:1111

htpasswd.txtにユーザー名とPASSを保存するときの注意点は、PASSは暗号化する必要があることです。暗号化するツールはいろいろありますが、今回は以下を使ってみましょう。

.htpasswd生成

 

ユーザー名とPASSを入力して、【.htpasswdを生成する】を押すとユーザー名とPASSが一緒になったデータが生成されます。このデータをhtpasswd.txtに保存します。

今回だとtest:chRxfa5o/qXx2をhtpasswd.txtに保存します。

 

ファイルをアクセス制限したいディレクトリにアップロード

ステップ1とステップ2で作成したファイルをアクセス制限したいディレクトリにアップロードします。

例)https://hoge.com/sample

sampleの部分にアクセス制限したいのであれば、sampleのディレクトリに2つのファイルをアップロードします。ファイルをアップロードしたら名前を変更します。

【変更前】htaccess.txt
【変更後】.htaccess

【変更前】htpasswd.txt
【変更後】.htpasswd

 

アクセス制限をかけたサイトをチェック

アクセス制限ができているかサイトにアクセスしてみます。

 

ステップ2で決めたユーザー名とPASSを入力してサイトが見れたら成功です。

※PASSは暗号化したものではなく、暗号化する前のものを入力してください。

 

ユーザー名とPASSを入力してもアクセスできない場合は?

アクセスできない原因のほとんどは、htaccess.txtで記入したフルパスが間違っていることです。フルパスを確認して、最後が.htpasswdで終わったパスになっているか確認しましょう。

それでもアクセスできないときは、以下の記事を参考にして正しく設定できているか確認してみてください。

今さらながらBasic認証がうまくいかないときに確認すること

 

その他:Wordpressでアクセス制限するためには?

wordpressでも同じ手順でアクセス制限をかけることはできますが、.htaccessファイルのアップするフォルダを間違えるとサイト自体が動かなくなるリスクがあります。

リスクを避けつつ、簡単にアクセス制限をかけたいのであれば「Password Protected」というプラグインがおすすめです。サイトを観覧する人にパスワードを要求し、そして自動でhead内にnoindex,nofollowをつけてくれるので検索エンジンに載ることもありません。

インストールして、有効化したら「設定」 > 「パスワード保護」を選択します。

 

 

あとは以下のとおり、設定していきます。

・パスワードの保護:有効にチェック
・許可する権限:管理者を許可、ログインしたユーザーを許可にチェック
・新しいパスワード:観覧に必要なパスワードを設定します

この3つの設定ができたら、「保存」をクリックして終了です。

 

本番のサーバーにアップしてサイトの動きを確認したり、サイト公開前にクライアントに確認してもらう場合に使えるプラグインですね。

サイトのメンテナンスの場合はこちらのプラグインよりも別のプラグインを使ったほうが良いでしょう。例えば「WP Maintenance Mode」のプラグインは日本語で使いやすくて有名です。

状況によって使い分けてみてください。