WordPressにhtaccessを使ってアクセス制限をかける方法
皆さんお疲れ様でございます。福岡でWebデザイナー・フォトグラファーやっとります、げんせいです。
今回はWordPressにhtaccessを使ってアクセス制限をかける方法を備忘録がてら書いていこうかと思います。
今回やりたいこと
今回はWordPressで固定ページを作り、そのページにhtaccessでアクセス制限をかけようと思います。手順としては
- 固定ページを作る
- 固定ページと同じパーマリンクのディレクトリを作成する
- WordPress直下にある【index.php】と【.htaccess】を一旦ダウンロードし、必要な箇所を編集して2で作成したディレクトリにUPする
- 【.htpasswd】を作成し、UPする
こんなとこですね。では順を追って行きましょう。
1. 固定ページを作る
まずはアクセス制限をかけたいページを作成しましょう。今回はとりあえずsampleというパーマリンクのページを作った体で話を進めます。
2. 固定ページと同じパーマリンクのディレクトリを作成する
sampleというパーマリンクのページを作ったので、FTPソフトなどで同じディレクトリになるようにフォルダを作成・UPします。
3. WordPress直下にある【index.php】と【.htaccess】を一旦ダウンロードし、必要な箇所を編集して2で作成したディレクトリにUPする
まずはWordPress直下にある【index.php】と【.htaccess】をダウンロードし、テキストエディタで開きましょう。
index.phpは17行目あたりの記述を変更します。
/*編集前*/ require( dirname( __FILE__ ) . '/wp-blog-header.php' ); /*編集後*/ require( dirname( __FILE__ ) . './../wp-blog-header.php' );
次は.htaccessの最初の方に以下のテキストを挿入します
AuthType Basic AuthName "Login" AuthUserFile /サーバーのフルパスを記述/.htpasswdをUPするディレクトリ/.htpasswd require valid-user
ちなみにサーバーのフルパスを簡単に知るにはpass.phpなど、適当なphpを作成して下のソースを記述すると表示されます。
<?php echo __FILE__ ; ?>
編集が終わったら【index.php】と【.htaccess】を2で作成したディレクトリにUPしましょう。
【.htpasswd】を作成し、UPする
ここは普通のhtaccessをかけるときと一緒ですね。.htaccessのAuthUserFileで設定したディレクトリに配置しましょう。
アクセス制限をかけるディレクトリ以下に置くと.htpasswdが参照できなくなるので気をつけましょう。
まとめ
今回はWordPressで固定ページを作り、そのページにhtaccessでアクセス制限をかけてみました。
WordPress自体にもページにパスワード保護をかけることも出来ますが、IDが使えなかったり、各ページに毎回パスワード保護を設定しないといけなかったり場合によっては使いにくい。。。
htaccessを使えばIDとパスワードどちらも使えますし、親子関係にしたページは以下すべてアクセス制限がかかるので必要に応じて使い分けましょう。