我正在使用Mod_Rewrite将一些旧页面重写(内部)到我网站上的新页面。
这有效:
RewriteRule ^thispage\.html$ thatpage.html
问题是页面更改为新页面(这很好!),但不会将(URL)名称从“thispage”更改为“thatpage”,因此用户会被提示到新地址。 Apache(2.x)声明在上述脚本之后放置[R]
,即
RewriteRule ^thispage\.html$ thatpage.html [R]
这应该让用户知道它已被更改并将它们发送到新页面。
当我添加[R]
时,我收到500错误。服务器是Apache / 1.3.33。
我认为强制服务器显示新网址的唯一方法是使用重定向而不是重写。有什么想法吗?
真心感谢任何帮助!
答案 0 :(得分:2)
你试过这个吗?
RewriteRule ^thispage.html$ thatpage.html [R=301,L]
或者,重定向在服务器上比重写更容易......
Redirect 301 thispage.html http://yourDomain.com/thatpage.html
答案 1 :(得分:0)
如果不显示新网址,则必须删除[R],因为 [R]用于显示新网址