エックスサーバーでBasic認証を設定したいけどうまくいかない!
エックスサーバーで特定のカテゴリーだけBasic認証を設定することってできるの?
エックスサーバーでBasic認証を設定したいけど、うまく設定できなくて悩んでいませんか?
エックスサーバーは通常の設定方法ではなく、エックスサーバーのやり方でBasic認証を設定しなければいけません。
わかってしまえば簡単なのですが、やり方を知らないとつまずきます!
そこで今回は、エックスサーバーでWordPressを使っている環境で、特定のカテゴリーにBasic認証を設定する方法を紹介しています。
エックスサーバーでBasic認証がうまく設定できずに悩んでいる方は、ぜひ参考にしてみてください。
僕はなかなかうまくいかず、2時間ほど時間を奪われました…(泣)
- エックスサーバーを使っている
- WordPressを使ってWebサイトを運用してる
- 特定のカテゴリーにBasic認証を設定したい
特定のカテゴリーにBasic認証を設定するまでの流れ
流れを簡単に説明すると、
- カテゴリーと同名のファイルをアップロード
- index.phpを修正してアップロード
- エックスサーバーでBasic認証の設定
となります。
では、それぞれ詳しく説明していきたいと思います!
ファイルの設定
設定したいカテゴリーのファイルを作る
ベーシック認証を設定したいカテゴリーのファイルを作ります。デスクトップなどに作ります。
例えば、memberというカテゴリーにBasic認証を設定したい場合は、memberというファイルを作ります。
member(カテゴリー名)というのは、WordPressでカテゴリーを作ったときに設定したスラッグになります。
フォルダを作ったら、WPフォルダのトップにファイルをアップロードします。
アップロードする場所を間違えないようにしましょう!
index.phpをダウンロード
WPフォルダのトップにあるindex.phpをダウンロードします。
index.phpをダウンロードしたらコードの修正をします。
修正前 require( dirname( FILE ) . '/wp-blog-header.php' ); 上記のコードを修正します。具体的には/wp-blog…の前に/..を追加します。 修正後 require( dirname( FILE ) . '/../wp-blog-header.php' );
修正が完了したら、先ほどアップロードしたmember(カテゴリースラッグ)のファイルの中にindex.phpをアップロードします。
フォルダ・ファイルの設定は以上となります。
通常なら.htaccessファイルをいじったり、.htpasswdを作ったりしますがエックスサーバーの管理画面で行うので必要ありません。
エックスサーバーの設定
エックスサーバーのサーバーパネルにログインします。
メニューにあるアクセス制限をクリックします。
Basic認証を設定したいドメインを選択します。
ドメインを選択すると、先ほどアップロードしたファイル(member)が表示されます。アクセス制限をONにしましょう。ONにしたら、ユーザー設定をクリックします。
↓
ユーザー設定でユーザーID、パスワードを設定して【確認画面へ進む】をクリックして、【追加する】をクリックします。このユーザーIDとパスワードが、Basic認証でログインするときに必要な情報となります。
設定完了
以上でBasic認証の設定が完了となります!
試しにBasic認証を設定したページにアクセスしてログインしてみます。
問題なくページが表示されれば成功です♪
エックスサーバーの設定が完了したら、アップロードしたフォルダの中に.htaccessが自動で生成されています。またWPのトップにある.htpasswdには、ユーザーが自動で追加されています。気になる人は見に行ってみましょう!
確認するときの注意点
一度ID・パスワードを入力してログインすると、次回からキャッシュ?のせいで入力しなくてもページが見れます。特に問題がないのですが、ユーザーの追加などがあったら、何度も試したいですよね。
そういう場合は、シークレットウィンドウなどでページを見ると毎回Basic認証のウィンドウが出てきてくれます。
まとめ
Basic認証できましたでしょうか!?
やってみるとすごい簡単なのですが、今までエックスサーバーを使ってなかった人は、エックスサーバー側の設定があることに気づかず、設定がうまくいかなくなることがあります(自分)
エックスサーバーはとても便利で使いやすいのですが、親切すぎて逆につまずくこともあります。
まずは使っているサーバーが、どのような機能があって、どんな設定をすることができるのかをある程度把握しておいたほうがいいかもしれません。
落ち着いてやればなんともないんですけどね(泣)