管理画面でWAFやWordpressセキュリティをOFF化しても403なら、.htaccessに次の記述があるかも。
Contents
海外からのアクセスだと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筋トレです。