URL重写无效

时间:2012-04-19 15:45:03

标签: apache mod-rewrite

我正在使用mod_rewrite为我的网站编写更多用户友好的URL。 我复制并修改了另一个页面的工作规则,但它似乎不想工作......

这是规则

RewriteRule ^list/(.*)/page/([0-9])/$ list.php?date=$1&page=$2

工作规则看起来像这样

RewriteRule ^read/(.+)/$ read.php?target=$1

据我所知,新规则应该有效...... 如果有人能够提出原因并且可能提供修复,我会非常感激

谢谢你的时间!

2 个答案:

答案 0 :(得分:1)

如果您的页码可以有多个数字,那么表达式的那一部分应该是([0-9] +),需要1位或更多位数。

答案 1 :(得分:0)

男孩我现在觉得自己像个白痴......

今天早上,当我上班时,我再次看到这个,发现规则确实没有任何问题。我没有改变我的链接......

对于任何引用此问题的人,遇到类似的问题: 如果您像上面一样编写RewriteRule,请务必更改链接href属性以使用新网址

所以,就我而言......

RewriteRule ^list/(.*)/page/([0-9]+)/$ list.php?date=$1&page=$2

链接必须从

更改
<a href="list.php?date=2012April&page=1>April 2012</a>

<a href="/list/2012April/page/1/

我忘记更改链接 derp