【この記事を読むのに必要な時間は約 5 分です。】
よく「WordPressをローカルに構築しよう」とか「XAMPP、WAMPで簡単構築」といった記事を見かける。私も最初、こうした記事を参考にしてローカル環境を構築した。
しかし、WordPressをインストールすることが可能なフリー(無料)サーバー(「freeweb」、「SiteMix」、「@PAGES」など)や私が利用している「CORE SERVER」などの国内レンタルサーバーは通常「.htaccess」ファイルが利用できる。
またレンタルサーバーであればサブドメインが利用できるだろうし、フリー(無料)サーバーであれば、登録メールアドレスを複数用意すれば複数のサイトを利用できる。
以上のことから、私は、WordPressをテスト運用するのに、「.htaccess」でパスワード認証(アクセス制限)して、サブドメインをテストサイトとして利用している。
こうすれば、本運用サイトと全く同じ環境でWordPressのテスト環境が構築できる。
目次
基本認証(BASIC認証)とは
基本認証(BASIC認証)とは、基本認証が施されているページへブラウザでアクセスしようとすると、認証ダイアログが表示され、IDとパスワードの入力が求められる。
IDとパスワードで認証するので、ユーザ別にアクセス用アカウントを発行することが可能。 また、1つのIDとパスワードで、全員共通のアカウントとすることも可能。
基本認証は、原則、ディレクトリ単位でアクセス制限を施すので、制限を施したディレクトリ内のどのURLを直接指定してアクセスした場合でも、認証ダイアログが表示される。※細かい設定は可能だが、今回は、省略。
「.htaccess」ファイルの作成
次のように記載した「.htaccess」ファイルを作成する。
「.」を忘れないことと、ファイルに拡張子は付けないようにすること。
order allow,deny
allow from all
AuthName (表示されるメッセージなど)
AuthType Basic
AuthUserFile (「.htpasswd」(ID・パスワード格納)ファイルの所在)
require valid-user
具体的には
order allow,deny
allow from all
Authname "For Members"
Authtype Basic
AuthUserFile /home/*****/*****/.htpasswd
require valid-user
Authnameは、”For Members”とか”Input your ID and Password.”とかでよい。
AuthUserFileは、「絶対パス」を記入する。
絶対パス
サーバーをレンタルすると必ずどこかに絶対パスを記載している説明ページがあるので確認すること。
ちなみに、私の利用している「CORE SERVER」では、次のように説明されている。
参考:私の「.htaccess」ファイル
order allow,deny
allow from all
Authname "For Members"
Authtype Basic
AuthUserFile /virtual/*******(アカウント)/public_html/haikupoem.jump-up.info/.htpasswd
require valid-user
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
AddHandler application/x-httpd-phpcgi .php
私の場合は、1行目~6行目が基本認証部分
ちなみに、7行目~16行目は、パーマリンク設定に伴うもの
最後の17行目は、PHPセーフモードへの対応である
「.htpasswd」ファイルの作成
先の「.htaccess」ファイル内の「AuthUserFile」項目で指定した「.htpasswd」ファイル(=IDとパスワードを格納したファイル)を作成する。
ID(ユーザー名)と暗号化されたパスワードを「:(コロン)」で区切って入力する。
1アカウントを1行で構成すること。
ID名:暗号化されたパスワード
例:
taro:UBCMaQoTX2L1w
jiro:5elIL9PgwRql2
saburo:SwDaPH6DHB0mQ
記入するパスワードは暗号化されたパスワードを記入すること。
「バーチャルドメインサービス .htaccess によるパスワード認証」といったパスワードを暗号化してくれるサイトは検索すればたくさんあるので、利用すればよい。
このようにパスワードは暗号化されているので、直接ファイルの中身を閲覧しても、オリジナルのパスワードは分からない。
ユーザーID | パスワード | 暗号化されたパスワード | .htpasswdにコピーするデータ |
---|---|---|---|
taro | 1234 | UBCMaQoTX2L1w | taro:UBCMaQoTX2L1w |
jiro | 0000 | 5elIL9PgwRql2 | jiro:5elIL9PgwRql2 |
saburo | 9999 | SwDaPH6DHB0mQ | saburo:SwDaPH6DHB0mQ |
「.htaccess」ファイルと「.htpasswd」ファイルのアップロード
出来上がった「.htaccess」ファイルと「.htpasswd」ファイルをFTPクライアントソフトを使ってアップロードする。
アップロード場所は、この例では、サイト全体にアクセス制限をかけるようWordPressをインストールしているディレクトリとしている。
「.htaccess」ファイルを置いたディレクトリ以下がパスワード認証の対象となる。
「.htpasswd」ファイルは別の場所に置いても良いが、絶対パスで指定すること。
今回は、同じ場所に置いている。
以上