0

私の Web サイトのルートには、.htaccess に FilesMatch が含まれており、それらのファイルを書き換えないようにしています。

<FilesMatch "\.(htm|php|js|css|htc|png|gif|jpe?g|ico|xml|csv|txt|swf|flv|mp4|webm|ogv|mp3|ogg|oga|eot|woff|svg|ttf|pdf|gz)$">
  RewriteEngine Off
</FilesMatch>

私が保護したいサブディレクトリが 1 つあります。すべてのファイルを php ファイル経由で送信して許可を確認します。そこにあるhtaccessは

RewriteEngine On
RewriteRule ^(.*)$ /protect.php [L]

ただし、これにより、ルートの filesmatch に一致するすべてのファイルが除外されます。オーバーライドしようとすると (同じ filesmatch 文ですが、RewriteEngine On ではファイルは無視されます。

サブディレクトリで FilesMatch をオーバーライドできますか?

4

1 に答える 1

0

そうすることもできますが、完全なルールセットをその中にラップする必要があります

<FilesMatch "\.(htm|php|js|css|htc|png|gif|jpe?g|ico|xml|csv|txt|swf|flv|mp4|webm|ogv|mp3|ogg|oga|eot|woff|svg|ttf|pdf|gz)$">
RewriteEngine On
RewriteRule ^(.*)$ /protect.php [L]
</FilesMatch>
于 2013-04-30T13:34:50.743 に答える