Wordpress@あなたを助け隊

WordPress (Xサーバー)海外アクセス403を直した

管理画面でWAFやWordpressセキュリティをOFF化しても403なら、.htaccessに次の記述があるかも。

海外からのアクセスだとWordpressが403エラー、直してほしい、というご依頼

原因を推測しよう

動く前に、原因を推測しよう。

当たり前に表示されるのがWEBサイト。
「海外からだと見えない」という状態になっているという事は、
わざわざ

「海外から見ることを禁じている」

と、設定で禁止しているのではないか?と推測しました。
エラーを解決するには、「禁止設定をOFF・あるいは解除」すれば解決できるのではないか?

レンタルサーバーで可能な禁止系設定

  • 管理画面のコントールパネル(セキュリティ関連)
  • .htaccessファイルによる、パーミッションの管理
  • サーバーのディレクトリやファイルのパーミッションの管理

禁止設定できる箇所は少ないので経験から承知していたり、検索してもすぐに情報入手できます。
この禁止設定のバリエーション情報を入手することが大切です。
このどれかが、禁止設定しているのだから、

1個づつ確認してゆき、「海外から」を「禁止」している個所を見つけ、それをOFF化。
OFF化後、期待通りに解決するか確認。

を実行します。

ホスティングはXサーバーです。

管理画面

セキュリティ・WAF設定を確認すると、もとよりOFF。
というわけで、管理画面はクリア。

次はサーバーの.htaccess。

.htaccess

一部抜粋です。

###X SUPPORT--------------------------###
<IfModule mod_geoip.c>
GeoIPEnable On
Order deny,allow
deny from all
SetEnvIf GEOIP_COUNTRY_CODE JP SupportCountry
SetEnvIf User-Agent ".*Google(bot)?(-Mobile)?" AllowSearchBot
SetEnvIf User-Agent "Y!J.*(crawler)?" AllowSearchBot
SetEnvIf User-Agent "(bing|msn)bot" AllowSearchBot
SetEnvIf User-Agent "facebookexternalhit" AllowSearchBot
SetEnvIf User-Agent "Twitterbot" AllowSearchBot
SetEnvIf User-Agent "Hatena" AllowSearchBot
SetEnvIf User-Agent "MicroAd"  AllowSearchBot
Allow from env=SupportCountry
Allow from env=AllowSearchBot
</IfModule>
###---------------------------------------###

このルールセットについて

mod_geoip モジュールを有効化、訪問者の国コードを取得可能に。
すべてのアクセスを最初に拒否しています。(Order deny,allow)
日本(JP)からのアクセスの場合、SupportCountry 環境変数をセットしています。
各種検索エンジンのクローラーからのアクセスの場合、AllowSearchBot 環境変数をセット。

SupportCountry または AllowSearchBot 変数がセットされている場合のみ、アクセスを許可。

日本からのアクセスと検索エンジンのクローラーのアクセスのみ許可、それ以外の国からのアクセスはすべて拒否
という設定になっています。

.htaccessにより、日本ユーザーと検索エンジン向けのコンテンツを表示できるように制御か。

対応方法

手っ取り早く

上記のブロックを消す

安心に

#deny from all

とコメントアウトする

確認は海外リージョンのサーバーから

確認には、実際の海外からのアクセスが必要なので、AWSやGCPの海外リージョンのインスタンスを使用。

海外リージョンのサーバーへSSHし、対象のサイトをwget。
修正前の状態では403にあんるのを確認。
.httaccess修正後には、正しくファイルを取得できることを確認。
任務完了。

まとめ

「海外から」を「禁止」しているのでは?という、最初の推測が大切。

推測できれば、「海外から」を「禁止」する方法を検索するなりAIに聞くなりして、つぎの手掛かりが得られます。

私は、「海外から・403」と聞い時点で、だいたいこうだろうな?というイメージがわきます。

経験による推測が速度と精度を上げます、そして、早く解決できることにつながります。

初心者の方へ、エラーと出会ったらググりまくる前に、自分の知識内で推測してみるのが良いと思います。
それが力をつけていくIT筋トレです。

ご相談・お問合せ

お気軽にどうぞ。