私はすべてを調べましたが、ディレクトリレベルのIP制限について話している同じ情報に遭遇し続けます。これは通常、次のようなものです。
Order Deny,Allow
Deny from all
Allow from 123.123.123.123
同じタイプのアクセス制限をページ/ドキュメントに関連付けることは可能ですか?
これにより、IP 127.0.0.1の誰かorが有効なユーザーとしてログインできるようになります。 configまたは.htaccessファイルに貼り付けます。
<Files learn.php>
Satisfy any
Order deny,allow
Deny from all
Allow from 127.0.0.1
AuthType Basic
AuthName "private"
AuthUserFile /var/www/phpexperts.pro/.htpasswd
AuthGroupFile /dev/null
Require valid-user
</Files>
IPのみ:
<Files learn.php>
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Files>
それは間違いなくあなたの質問に答えます。
ディレクティブは次のようにする必要があると思います。
Order deny,allow
上記の答えが機能するため(少なくともIP単独ソリューションの場合)。
Mod-rewriteベースのソリューション:
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^Y\.O\.U\.R\.IP$
RewriteRule ^file\.php$ - [F,L]
上記のrewriteRuleは、クライアントIPがRewriteCondのパターンのIPアドレスと一致しない場合、file.phpへのすべての要求を拒否します
より最新のApache 2.4の例:
<Files file.html>
Require ip 123.123.123.123
</Files>
追加のオプションと例の詳細なドキュメントは次のとおりです。 https://httpd.Apache.org/docs/2.4/howto/access.html と<Files>
ディレクティブのドキュメント: https://httpd.Apache.org/docs/2.4/mod/core.html#files
<Files>
を<Directory>
セクション内にネストして、ファイルシステムの適用部分を制限できることに注意してください。