软讯网络 > 操作系统 > 其他操作系统 > 关于 apache url rewrite 的问题
【标 题】:关于 apache url rewrite 的问题
【关键字】:
apache,url,rewrite
【来 源】:http://www.cublog.cn/u/19814/showart.php?id=203241
关于 apache url rewrite 的问题
关于 apache url rewrite 的问题,sunray介绍我来这里咨询!
某天我得知apache有url rewrite功能在朋友的帮助下找了篇文章小学习,而后在本机加了一条普通规则,测试成功!
便在服务器上测试,在httpd.conf中加了一条通用规则,和数条普通规则。
当时通用规则如下:
RewriteRule (.*?\.php)(\?[^/]*)?/([^/]*)/([^/]*)(.+?) ?$1(?2$2&:\?)$3=$4?5$5: [N,I]
第一次添加时,通用规则在前,普通规则在后
添加并reset apache后,通用规则生效!!!普通规则均未生效!!
例子可见:
http://forum.goodsofchina.com/viewtopic.php?t=136
与
http://forum.goodsofchina.com/viewtopic.php/t/136
该通用规则
把 http://www.myhost.com/foo.php?a=A&b=B&c=C
表现成 http://www.myhost.com/foo.php/a/A/b/B/c/C
其后,我便删除了该通用规则,reset apache后,发现依然生效
甚至我封上了#LoadModule rewrite_module modules/mod_rewrite.so
重起apache,它依然生效
甚至我重起了服务器,它依然生效!!
难道还有什么位置自动记录了这个规则??请高手指教!
回复或者mail:lionel_Drong@hotmail.com
欢迎到博客交流:http://blog.goodsofchina.com
谢谢!
当时大约是这么写的
#general
RewriteRule (.*?\.php)(\?[^/]*)?/([^/]*)/([^/]*)(.+?) ?$1(?2$2&:\?)$3=$4?5$5: [N,I]
#for bbs
RewriteRule /topic_(.+)\.html$ /viewtopic.php?t=$1 [L]
#.... 当时加了不止一条,省略
#for www
RewriteRule /mtype)_list_(.+)\.html$ /mtype_list.php?btype=$1 [L]
#.... 当时加了不止一条,省略
#for other...
由于我事后删除了,不确切是这样,但是后面的单条规则在我本机上都是通过测试的,只是加服务器的时候,第一次就把general的那条加上了。