用CodeIgniter忽略文件夹?

时间:2012-02-14 12:25:15

标签: php .htaccess codeigniter

我的htaccess中有以下代码,我试图让CodeIgniter忽略newdesign文件夹。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|images|newdesign.*|cache.*)
RewriteRule ^(.*)$ index.php/$1 [L]

使用此我可以转到domain.com/newdesign但不转domain.com/newdesign/anything_else,它会给出404

任何人都可以对此有所了解吗?

我对htaccess不太好!

您知道,newdesign文件夹是域CI设置的图像

5 个答案:

答案 0 :(得分:2)

试试这个:

RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_URI} !^/(index\.php|images|newdesign[^/]*|cache[^/]*)$
RewriteRule ^(.*)$ index.php/$1 [L]

答案 1 :(得分:0)

RewriteCond $1 !^(index\.php|images|newdesign|cache.*)

这个怎么样,这有用吗? 我不认为你需要一个用于`newdesign,

的通配符

参考:http://codeigniter.com/user_guide/general/urls.html

答案 2 :(得分:0)

尝试删除第三个RewriteCond

这就是我.htaccess中的内容,一切正常。我可以毫无问题地从文件夹访问图像

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

答案 3 :(得分:0)

如果您想阻止访问该文件夹,可以尝试

redirectMatch permanent ^(/newdesign/(.*/)*)$ http://www.yourdomain.com/

这会将任何转到http://www.yourdomain.com/newdesign的内容以及之后的任何内容重定向到您指定的位置。

答案 4 :(得分:0)

试试这个:

RewriteRule ^newdesign(/|$) - [L]
在任何RewriteCond之前

相关问题