mod_rewrite:重写规则还是重定向?

问题描述:

如果我使用内部重写规则来更改我的网页名称而不是重定向,看起来我会有内容重复?例如,如果我将/oldpage.html重写为/working-person.html,则会将其重定向到working-person.html。这实际上起作用。但oldpage.html仍然是“直接”链接,并且不显示301.mod_rewrite:重写规则还是重定向?

如果我在末尾添加[R]或[R = 301],服务器将抛出500错误: RewriteRule^oldpage。 html $ working-person.html [R = 301]。

另一方面,重定向301 /oldpage.html hXXp://www.example.com/working-person.html起作用。我应该只使用重定向吗?

我以为我在某处使用rewriterule而不是重定向时使用其他指令。如果您获得重复的内容,为什么要使用内部重写?

感谢您的任何想法/意见。

+0

你应该用相关技术标记这个问题。这些标签可以帮助这个问题得到谁能够回答的关注。 – 2011-06-06 00:15:51

这是个案的基础。在你的情况下,你应该使用HTTP 301永久重定向,以避免内容重复。我个人使用重写只是为了让用户和搜索引擎友好链接。