- 更新日: 2016年3月14日
- WordPress
WordPressでプライベートな非公開ブログを運用
WordPress でプライベートな非公開ブログを運用する方法です。手っ取り早く実現するために、.htpasswd と .htaccess のファイルを作成して Basic 認証を用いる方法を採用しました。この方法ですと、WordPress 運用のブログ・サイトを、10分程度の作業で完全にプライベート化して非公開で運用できます。
— 環境 —
WordPress 4.4.2
WordPress では個別の記事エントリーについては公開、パスワード保護、非公開の設定を行えますが、これはあくまでも記事ごとの設定となります。WordPress のトップページを含めたサイト全体をプライベート化するには、どうやら管理画面の設定ではできないみたいです。robots.txt で検索エンジンをはじく設定はできますけれど。
Basic 認証で WordPress 全体を非公開にする
この件は、お客さんの方から要望があって考えたのですけど、できるだけ費用と手間をかけない方法でと依頼されました。ということで、手っ取り早く思いついたのが Basic 認証を用いる方法です。ベーシック認証は、セキュリティ的にはちょっと心もとないですが、顧客情報やユーザー情報を預かるなどの認証目的ではないので、今回の要件ではまぁありかな…と。簡単ですし。
以降 WordPress 運用のブログ・サイトに Basic 認証をかける手順です。というか、別に WordPress に限らずどんなウェブサイトでも同様の方法を使えます。
.htpasswd ファイルを作成
Basic認証用の .htpasswd ファイルを非公開ディレクトリ(DocumentRoot より上位階層のディレクトリ)に作成します。
SSH でサーバーにログインして作業しました。レンタルサーバーなどで、.htpasswd を GUI 管理画面から作成できる場合は、その手順に従う。
SSH でコマンドラインで作業する場合は、以下のように htpasswd コマンドを実行します。
1 2 3 4 5 6 7 |
$ ssh example.com $ htpasswd -c /home/user/.htpasswd 任意のユーザー名 New password: Re-type new password: Adding password for user username |
上記のように htpasswd コマンドを実行しますと、設定するパスワードを聞かれるので入力します。Basic 認証用のユーザー名・パスワード は任意の推測されにくいものを入力します。
.htaccess ファイルを作成
続いて、DocumentRoot 以下(ここの例では /home/user/public_html/)に .htaccess を作成します。既存の .htaccess が存在する場合は、Basic 認証のための設定を末尾に追記する。
1 2 3 4 5 6 7 |
$ vi /home/user/public_html/.htaccess AuthName "Input User name and password" AuthType Basic AuthUserFile /home/user/.htpasswd Require valid-user |
AuthUserFile には先ほど作成した .htpasswd ファイルのパスを指定します。
以上の作業で、Basic 認証のユーザー名・パスワードを知っている人しか閲覧・管理のできない、プライベートな非公開 WordPress ブログが完成しました。
プラグインで Basic 認証をかける方法もある
少し検索して調べたところ、WordPress プラグインの WP BASIC Auth を使う方法もあるようです。
WP BASIC Auth – WordPress Plugins
ただし、最終更新が1年ほど前で、最新の対応バージョンが WordPress 4.1.10 となっていたので、今回の要件では使用しませんでした。
Basic 認証をかけるだけなので、プラグイン使わなくても簡単ですし、WordPress 本体のアップデートでもトラブルが発生しないので安心かとも思います。もちろん好みでプラグインを使っても構いません!
- WordPress の関連記事
- WordPressをTwitter Bootstrapでレスポンシブデザイン対応
- WordPressブログに更新日を表示
- WordPressにOGP設定・プラグインなしでFacebook/Twitter Cards対応
- WordPressでパンくずリスト・複数の親子カテゴリーを表示
- BackWPupでエラー ERROR: Dropbox API: (35)
- ブログ・WordPress記事をFacebookに自動投稿するIFTTT設定
- RSS Graffitiが終了…代替にはIFTTTが使える
- WordPressで親カテゴリーに属する子カテゴリーの一覧を出力
- wp_list_categoriesでリンクなしで投稿数ゼロのカテゴリを表示 – WordPress
- WordPressでmeta descriptionを設定(プラグインなし版)
Leave Your Message!