我正在使用此代码将所有请求发送到单个php文件:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) myfile.php?id=$1 [QSA,L]
但是现在我想阻止直接访问到myfile.php和其他phps。我不希望php文件直接通过浏览器打开,但它们必须适用于包含等等。
我该怎么做?
答案 0 :(得分:4)
您可以使用文件指令阻止文件。要阻止以.inc结尾的文件,请执行以下操作:
<Files ~ "\.inc$">
Order allow,deny
Deny from all
</Files>
答案 1 :(得分:0)
也许这会有所帮助:
RewriteCond %{REQUEST_URI} !(.*).php$ [NC]
RewriteRule ^.* - [F,L]
这里有几个不错的例子:Apache wiki: RewriteCond