我在我的项目中有一个模块目录,我想阻止访问其中的PHP文件。 除此之外,我还应该解析该目录中的一些css和js文件。我在.htaccess中使用此代码.htaccess拒绝访问只是PHP文件
deny from all
但它使我的CSS和JS文件无法访问。我怎样才能防止访问只是PHP文件,而不是CSS和JS文件?
我在我的项目中有一个模块目录,我想阻止访问其中的PHP文件。 除此之外,我还应该解析该目录中的一些css和js文件。我在.htaccess中使用此代码.htaccess拒绝访问只是PHP文件
deny from all
但它使我的CSS和JS文件无法访问。我怎样才能防止访问只是PHP文件,而不是CSS和JS文件?
我检查@xbonez代码它给了我同样的错误。
我使用这个代码(测试):
Options -Indexes
RewriteEngine on
RewriteCond %{REQUEST_URI} !\.(css|js)$ [NC]
RewriteRule .+ - [F,L]
记得设置Options -Indexes
,使您的文件夹无法浏览。
编辑:
注:
*此代码必须被放入.htaccess
文件并将其放置你想要的目录
* %{REQUEST_URI}
=你有什么要求相对URL里面。例如:directory/style.css
* !\.(css|js)$
=凡不与CSS或JS文件末尾
* .+ - [F,L]
=禁止请求的URL /文件
的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>
谢谢xbonez,我用你的代码,但它仍然无法解析JS和css文件。现在在“查看模式”模式下,当我点击js和css文件时,它会给我“服务器错误!”错误500 – Alireza 2013-04-30 06:47:16
谢谢@machineaddict,我通过删除星星来解决它。代码应该是: –
Alireza
2013-04-30 07:42:38