ブログでパスワード要求

ブログを表示するたびにパスワードを要求される場合の対処法

こんにちは、ブロガーのレイです。

ぼくはこのブログをWordPressで運営しています。

ある時から急にブログでこんな現象が発生するようになりました。

Basic認証の画面

ただページを表示するだけなのに、こんなパスワードを入力させる画面が表示されるようになったんです。

この現象の原因と対処方法をまとめました。

パスワードを要求された2つの原因

よく調べてみたら、この現象が発生した原因は2つあったんです。

それも、1つの原因だけの時にはこんな事は起こらず、2つの原因が重なった時にこんな事が起きてしまいました。

原因はこの2つです。

  • 管理画面にBasic認証をかた
  • WordPressのプラグイン「Aurora Heatmap」を導入した

Basic認証

まず最初の原因はBasic認証です。

これは何かというと、Webサイトにアクセス制限をかけるものです。

このブログは管理画面の安全性を高めるために、WordPressで行うログインとは別の認証をつけています。

WordPressで行うログインは、ブログをやっている人ならおなじみのこんなやつ。

WordPressのログイン画面

WordPressのログイン画面

Basic認証をかけると、このログインに加えて別のIDとパスワードを入力しないと管理画面には入れません。

WordPressのログインが成功しても、さらにこんな感じで別の認証を要求されます。

Basic認証の画面

このことから、ブログを表示した時に何かが管理画面にアクセスしようとしてるのが分かりました。

Aurora Heatmap(プラグイン)

Aurora HeatmapはWordPressのプラグイン。

Aurora Heatmap – WordPress プラグイン | WordPress.org 日本語

ブログを読んだ人がどのあたりをクリックしているのかが、画面の色で一目でわかる便利のもの。

色がついている場所がよく見られている場所です。

Aurora Heatmapの画面

実はこのプラグインが管理画面にあるファイルにアクセスしていたんです。

正確にいうと管理画面の機能がまとめて入ってある「wp-admin」フォルダの中にある、PHPファイルにアクセスしています。

Aurora Heatmapでは、wp-admin内の「admin-ajax.php」にアクセスしていました。

だから管理画面にログインしていない、一般のユーザーがブログに訪れた時にBasic認証でパスワードを要求される事態が発生してしまったんです。

一方、ぼくの場合には基本的にはいつも管理画面にログインしています。

管理画面にログインしているということは、Basic認証でも認証済みです。

だから、Basic認証でパスワードを要求されずこの現象に気づかなかったんですね。

パスワードを要求されないようにする対処法

このようにブログを訪れた人が毎回パスワードを要求されるのはとてもマズいです。

めちゃくちゃうっとうしいですよね。

そこで解決策を2通り挙げておきましょう。

対処法1:アクセス制限を解除する

最初の対処法はBasic認証によるアクセス制限をやめてしまう方法。

簡単に対応できるのがメリットですね。

一方、セキュリティの面では一段低くなってしまうのがデメリット。

アクセス制限を解除する方法は大手のレンタルサーバーを使っている場合には、簡単なことが多いですね。

ぼくは「エックスサーバー」を使っているので、アクセス制限の設定・解除方法を載せておきます。

エックスサーバーにログインして、「サーバーパネル」に入ります。

サーバーパネルに入る

「アクセス制限」をクリック。

アクセス制限をクリック

ブログの中にある「wp-admin→アクセス制限」を「OFF」に変更。

wp-adminのアクセス制限をOFFに変更する

これで管理画面に入るBasic認証は解除されるので、他の人がブログを見に来てもパスワードを要求されなくなりました。

対処法2:特定のファイルへのアクセス制限を解除する

セキュリティを落としたくないので、Basic認証を残したままAurora Heatmapも使う方法です。

これはAurora Heatmapの作者さんが、わざわざTwitterで教えてくれました!

ここでは「wp-admin/admin-ajax.php」をBasic認証の対象外にするように設定していきます。

バックアップ必須です!!

ここではサーバーに置かれているファイル.htaccessを修正します。

このファイルはとても重要なファイルで、修正を間違えるとブログが見られなくなったり、動きがおかしくなってしまう可能性も。

必ずバックアップを取ってから作業しましょう!!!

不具合が起きた場合には、すぐにバックアップを取っておいたファイルを元の場所に戻せば直せますので。

.htaccessの修正は「エックスサーバー」なら、「ファイル管理」からファイルをダウンロードして、再度アップロードすればできますよ。

もちろんFTPソフトを使ってやってもOKです。

ファイル管理はこちらから

エックスサーバーのファイル管理

ずっと中の方へ入っていって「wp-admin」の中に入ると「.htaccess」が見つかりました。

.htaccessをクリック

「.htaccess」をクリックすればファイルがダウンロードされるので、内容を修正します。

隠しファイルを見えるようにする

ここでひとつ注意です。

「.htaccess」はパソコンの初期設定では見えません。

ダウンロードしたらパソコンの設定で隠しファイルを見えるように設定してください。

やり方は次の通りです。

Windows10
  1. 「タスクバー」→「エクスプローラー」
  2. 「表示」→「オプション」→「フォルダーと検索のオプションの変更」
  3. 「表示」タブ→「詳細設定」→「隠しファイル、隠しフォルダー、および隠しドライブを表示する」

参考:Windows 10 の隠しファイルと隠しフォルダを表示する

Macの場合にはショートカットキーで簡単。

「Shift」 + 「command」 + 「.」

それでは.htaccessファイルのどこを修正するか見ていきましょう。

まずはこれが修正前のファイルです。

変更前の.htaccess

Basic認証しますよ!と書かれています。

このファイルをこのように修正しました。

修正後の.htaccess

この内容を追記します。

<FilesMatch "(admin-ajax\.php)$">
Satisfy Any
Order allow,deny
Allow from all
Deny from none
</FilesMatch>

追記したファイルをもとあった場所にアップロードすればおしまいです。

これで一般のユーザーがブログを訪れてもパスワードを要求されなくなりました。

もちろんAurora Heatmapもきちんと表示されるようになりましたよ。