3

答えが見つかりました。投稿の最後を参照してください

クラスター/クラウド環境 (より具体的には Rackspace Cloud) でホストされている場合、IP によってファイルへのアクセスをどのように制限しますか。昨日、私はここで同様の質問をし、次の回答を受け取りました。これは、ローカルのテスト環境でうまく機能しました (ありがとうございます)。

<Files test.html>
    Order allow,deny
    Deny from all
    Allow from 123.123.123.123
</Files>

しかし、Rackspace Cloud でわかったことは、訪問者がページにアクセスするまでに (または .htaccess に関する限り)、IP は既に変更されているということです。

.htaccess ディレクティブをテストしていたときにこれを発見しました。実際の IP ではアクセスできませんが、サイトの独自のホスティング IP は機能します。

他のいくつかのテストでは、彼らのクラウド環境では、訪問者の IP が「REMOTE_ADDR」ではなく「HTTP_X_FORWARDED_FOR」を介して報告されることもわかりました。

誰もこれで良い回避策を持っていますか? .htaccess が検索する IP を変更できるディレクティブが .htaccess にありますか?

(はい、これと同じ質問を Rackspace に投稿します。)


回答が追加されました

したがって、オンライン サポートで数時間頭を悩ませた後、少なくとも Rackspace Cloud で使用するディレクティブは次のとおりです。

<Files filename.htm>
SetEnvIf X-Cluster-Client-Ip 000.000.000.000 allowclient
SetEnvIf X-FORWARDED-FOR 000.000.000.000 allowclient
order deny,allow
deny from all
allow from env=allowclient
</Files>

SSL クラスターの背後にいるかどうかに応じて、「X-Cluster-Client-Ip」(非 SSL) または「X-FORWARDED-FOR」(SSL) ディレクティブを使用して IP を一致させます。 .

4

0 に答える 0