【发布时间】:2012-03-10 02:49:56
【问题描述】:
我正在使用此RewriteRule ^page/([0-9]+)/ page.php?id=$1 将 URL http://example.com/page.php?id=00001 更改为 http://example.com/page/00001/,尽管任何图像或 CSS/JS/etc 页面不再正确链接。
EG:http://example.com/_img/image.jpg 变成http://example.com/page/00001/_img/image.jpg
有没有办法改变整个目录?例如,我试过这个:
RewriteRule ^page/([0-9]+)/(.*?) $2
但这没有用。感谢您的帮助!
编辑:
好的,这似乎有效,但只有其中一个有效,具体取决于哪个是第一个。
RewriteEngine on
RewriteRule ^page/([0-9]+)/(.*)$ $2
RewriteRule ^page/([0-9]+)/ page.php?id=$1
这样它会忽略第二个,所以http://example.com/page/00001/ 现在是http://example.com/index.php?id=00001 而不是http://example.com/page.php?id=00001
是否可以同时考虑第二个?
【问题讨论】:
-
在
http://example.com/page/00001/的情况下,两个重写规则都将适用。你会在最后一个斜线后面放什么样的信息? -
example.com/page/00001/_img 或任何应该“重定向”到example.com/_img 的东西。基本上,我希望example.com/page/00001 重定向到example.com/page.php,但其他任何东西都只是example.com/whatever
-
啊,没关系。解决它。谢谢! :)
标签: url mod-rewrite