Codeigniter .htaccess:授予所有文件的公共访问权限,但不授予文件夹

时间:2013-09-14 09:14:51

标签: php .htaccess codeigniter

我的文件格式如

  application
       - controllers
       - views etc...
  assetes
       - Images
       - Css etc...

和我的.htaccess文件如下:

#Deny from all
RewriteEngine on
RewriteCond $1 !^(index\.php|assets|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

我的问题是资产文件夹访问每个用户浏览所有图像和所有css文件但需要的只是用户访问资产文件夹文件而不是访问整个文件夹

请帮帮我 谢谢!

2 个答案:

答案 0 :(得分:7)

只需将index.html文件放在要阻止目录访问的文件夹中即可阻止目录访问。

这是标准CodeIgniter安装的方式。可以在application\controllers文件夹中找到以下index.html文件。

<html>
<head>
    <title>403 Forbidden</title>
</head>
<body>
    <p>Directory access is forbidden.</p>
</body>
</html>

答案 1 :(得分:0)

在你的htaccess中使用以下行 RewriteCond%{REQUEST_FILENAME}! - f 这是用于文件访问

RewriteCond%{REQUEST_FILENAME}!-d 这是为了胜利访问