apache   很奇怪的问题???

apache   很奇怪的问题???

比如百度的搜索连接地址
http://www.baidu.com/s?ct=0&ie=gb2312&bs=%3D&sr=&z=&cl=3&f=8&wd=%3F

我用IIS 写 rewrite 可以实现
写APACHE 的就不成功!

RewriteRule ^(.*)/(s)([\?\/]+)(.*)$ $1/index.php?action=$2&$3
可能的链接 www.abc.com/s?word=123

apache 就不解析

我改成 www.abc.com/s/word=123

就解析了  非常奇怪 为什么不解释?呢 难道是特殊字符

IIS  下没有这个问题


RewriteRule ^(.*)/(s)(.*)$ $1/index.php?action=$2&$3

改为上面的

www.abc.com/s?word=123

能够获得s 但?后面的就获取不到了


怎么回事!!!!!!!!!!!!!
RewriteCond %{QUERY_STRING} ^word=([^&]+)$
RewriteRule /s /index.php?action=%1 [L]

好像是这样的,query string部分,要用RewriteCond %{QUERY_STRING}来匹配,匹配到的内容,用%1,%2....来引用
引用 1 楼 wenbo_ying 的回复:
RewriteCond %{QUERY_STRING} ^word=([^&]+)$
RewriteRule /s /index.php?action=%1 [L]

好像是这样的,query string部分,要用RewriteCond %{QUERY_STRING}来匹配,匹配到的内容,用%1,%2....来引用


OK 了 谢谢!!又学了一招!