1

私が知る限り、フラグはmod_rewriteSに適用され、ルールを書き換えます。しかし、私は新しいURLにリダイレクトしたい古い索引付きのPHPページをいくつか持っています。私はこのような行の膨大な数のようにしている:htaccessはすべてのPHPファイルへのアクセスを拒否しますが、存在しないリダイレクトをリダイレクトします

RewriteRule ^example.php(/?.*) /example/$1 [R=301,L] 

これはnormaly仕事だろうが、私は私の.htaccessにも、このコードを持っている:

<Files *.php> 
Order Deny,Allow 
Deny from all 
</Files> 

これをスキップすることが可能であるならば、私は、疑問に思って上記の2つのフラグが適用されない限り、ルールが満たされている場合

答えて

1

あなたは、以下のよう.phpファイルへのアクセスを拒否するために、一般的なルールに続く上部で、すべての特定のリダイレクトルールを守ることができます。

RewriteEngine On 

# specific .php handlers 
RewriteRule ^example\.php(/.*)?$ /example/$1 [R=301,L,NC] 

# generic rule to deny .php files 
RewriteCond %{REQUEST_URI} !^/index\.php [NC] 
RewriteRule \.php$ - [F,NC] 
関連する問題