madwolfs 发表于 2009-11-20 15:23:01

解决codeigniter on IIS rewrite问题--静态文件也无问题。

本帖最后由 madwolfs 于 2009-11-20 15:26 编辑

鬼使神差 老板弄了个 iis的空间。
我那个汗啊。
本来codeigniter的.htaccess文件是这么写的。
######################
RewriteEngine on
RewriteCond $1 !^(index\.php|imgs|css|js|upload|robots\.txt|{1,}\.html)
#上面一行是使用下面一条 重写规则 的 条件,也就是是说当$1不是 以上列出来的文件或者访问目录的时候才去 rewrite
RewriteRule ^(.*)$ /index.php/$1
#上面这行我就不说了,把请求都交给index.php去处理。
#############################
然后我把 这些内容复制到 http.ini下 不行。现象为全部都rewrite了。都交给index.php去了。
于是乎我就开始修改RewriteCond 这一句,千改万改都不成功啊。
于是我开始上E文google了,开始漫漫外文搜索路途。
终于在http://www.rampage-online.net/articles/codeigniter-on-iis 找到了。
################

RewriteRule /(?:css|img)/(.*) $0
#上面一句的意思是 判断是不是请求css目录或者img目录的,如果是就 $0 我猜测这个$0代表原请求地址的意思。就是让你请求的地址。
RewriteRule /robots\.txt $0
#这个也一样。
RewriteRule /(.*) /index.php\?/$1
#这句就不用说了,把能不符合上两句的都rewrite到index.php去
###########################
所以只要我这样改
RewriteRule /(?:imgs|css|js|upload)/(.*) $0
就可以了。
语言拙劣,术语不专业,希望大家能看明白,再就是希望高手能够海涵,或许是班门弄斧了。:)

乌有 发表于 2009-12-13 10:04:04

留个位日后好查.

raybest 发表于 2010-7-9 15:28:51

小弟按照这个方法解决了,拜谢!

zhangcjl 发表于 2011-2-9 09:47:31

好东西,解决了IIS的rewrite~~

stdivw 发表于 2011-2-9 09:53:39

好,收起来

bigticket 发表于 2011-2-23 14:45:57

感谢了。即使我依然搞不定服务器上的index.php

capsule8 发表于 2011-4-12 16:15:51

拜谢楼主

、少公子 发表于 2012-3-7 17:57:22

{:soso_e179:}楼主给力!困扰两天的问题被解决了,顶,好贴。

小问 发表于 2012-4-1 00:38:27

留言mark,明天研究。。。。我就遇到这个问题。。。

pingding 发表于 2012-8-5 19:51:43

感谢楼主啊,困扰多时的问题解决啦!
页: [1] 2
查看完整版本: 解决codeigniter on IIS rewrite问题--静态文件也无问题。