以下是我原来的网址
http://localhost/mysite/mainarticle?article_id=84
重写规则
RewriteRule ^/article/([0-9]+) /mainarticle?article_id=$1 [L]
新网址
http://localhost/mysite/article/84
当我使用new url
时,会出现Object not found
错误。好像我的重写规则不起作用。如果我正确使用规则或需要更改,需要你的帮助。
注意:
我也在使用其他规则来隐藏扩展名。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteRule ^([^\.]+)$ $1.html [NC,L]
答案 0 :(得分:3)
您使用的是绝对路径,但/mysite/
不是文档根目录,因此无效。删除前导斜杠以使用相对路径,你应该很好。
RewriteRule ^article/([0-9]+) mainarticle?article_id=$1 [L]
由于它是内部重定向,您还可以安全地添加.php
扩展程序,以防您知道这是您要定位的文件,这样可以避免对丢失的扩展程序进行额外的重写。
... mainarticle.php?article_id=$1 [L]