我的项目中有一个模块目录,我想阻止访问其中的PHP文件。 此外,我在该目录中有一些应该被解析的css和js文件。我在.htaccess中使用了这段代码
deny from all
但它使我的css和js文件也无法访问。我怎样才能阻止只访问PHP文件,而不能访问css和js文件?
答案 0 :(得分:1)
我检查了@xbonez代码并且它给了我同样的错误。
我正在使用此代码(已测试):
Options -Indexes
RewriteEngine on
RewriteCond %{REQUEST_URI} !\.(css|js)$ [NC]
RewriteRule .+ - [F,L]
请务必设置Options -Indexes
,以便您的文件夹无法浏览。
修改强>
备注:强>
*此代码必须放入.htaccess
文件并将其放在所需目录中
* %{REQUEST_URI}
=您要求的相对网址。示例:directory/style.css
* !\.(css|js)$
=每个不以css或js结尾的文件
* .+ - [F,L]
=禁止请求的网址/文件
答案 1 :(得分:0)
在deny for all
之后,您可以使用此指令访问css
和js
个文件
<FilesMatch "*\.(css|js)$">
Order Allow,Deny
Allow from all
</FilesMatch>
您的最终htaccess
应该看起来像这样:
Order Deny,Allow
Deny from all
<FilesMatch "*\.(css|js)$">
Order Allow,Deny
Allow from all
</FilesMatch>