devinbrook987 发表于 2013-3-3 21:35:16

RewriteRule 去掉index.php 资源文件访问失败

RewriteCond $1 !^(index\.php | resource)
RewriteRule ^(.*)$ /index.php/$1

这样写就会出现resource 文件夹下的资源文件无法访问。

后来,我去掉了 ^ ,就可以了。但这样的话,我怕在以后的路径中。如果有resource 的正常网页也会出现不重写URL 的危险。
谁帮我解释一下 $1 里是什么内容,是:http://www.xxx.com/reg/index 还是除掉主机名的部分 /reg/index 还是reg/index
新手,资料看起来有点不太明白,求详细解释。{:1_1:}{:1_1:}{:1_1:}

devinbrook987 发表于 2013-3-3 21:35:59

我的resource 是在CI 根目录下的一个文件夹,里面存放着整个资源文件,图片,JS CSS 之类的。

devinbrook987 发表于 2013-3-3 21:43:37

额。我想我猜出一点来了,!^(/resource) 就可以了。看来,$1 里存放的格式是/resource/js/jquery.js 像这样的格式。


而RewriteRule ^(.*)$ /index.php/$1
http://www.xxx.com/reg/index
重写后的结果是http://www.xxx.com/index.php//reg/index 两个// 对浏览器来说并不影响正常使用,
不知道对不对,有人看到就解释一下好不?

devinbrook987 发表于 2013-3-3 21:45:20

RewriteRule ^(.*)$ /index.php$1
去掉$1 前的/也没有影响使用,看来真的是/resource/js/jquery.js 的格式了。
页: [1]
查看完整版本: RewriteRule 去掉index.php 资源文件访问失败