0

目前,如果人们访问 domain.com 或 www.domain.com,我的网站会显示相同的数据。

我想设置一个重定向,以便所有对 domain.com 的请求都将发送到 www.domain.com。因此,访问 domain.com 的用户将被重定向到 www.domain.com。就像你去http://amazon.com/?a=b会发生什么

我不想丢失或损坏在 domain.com 请求中发送的任何 GET 或 POST 数据。

做这个的最好方式是什么?我应该使用 301 重定向吗?这是否会导致用户的浏览器将 GET/POST 数据重新发送到 www.domain.com URL?

[编辑] 好的,Zaagmans 说将 POST 透明地重定向给用户是不可能的。所以让我们暂时忽略 POST。我应该如何仅使用查询字符串数据进行重定向?

4

2 回答 2

1

Redirecting Post Requests文章详细解释了这一点。提议的307
重定向 的一个(可能)缺点是浏览器会提醒用户并提供继续或取消请求的选项。

于 2009-02-20T12:33:51.400 回答
1

是的。对于 GET,您需要使用 301,并且浏览器需要重新请求它。如果您的 GET 是幂等的(它们应该是幂等的),那么这将不是问题。搜索引擎以不尊重其他 30x 代码的方式尊重 301。

我不知道您使用的是哪个 Web 服务器,但通常有 URL 重写/重定向模块可以为您处理很多此类问题。

于 2009-02-20T15:13:25.417 回答