2009-11-12 54 views

回答

4

这取决于你的目的。

301表示“这不是正确的URL,在其他地方查看并使用记住其他URL更好;不要回到这里!“。

302说:“这是你应该继续使用的正确的URL,但实际上让内容看起来在其他地方”。

303就像302,但专门用于表单提交后的重定向。

如果您的目的是一个网址缩写,那么303并不真正相关。它仍然可以工作,但是没有提供超过正常的302。对于一个URL缩短的人,我会说301会是最合适的,因为另一个URL是'真正'的。说302是试图保持地址的所有权和任何SEO动力所造成的自己的使用:有点粗鲁,但也许你想要粗鲁。

+0

302完全符合我的要求(使用Cache-Control:private) – 2009-11-13 01:53:31

0

301是一个永久重定向,如果这是你想要做的,那么这是所有的SEO专家推荐。

+0

+1提及SEO相关性 – 2009-11-12 11:41:45

+0

不是。 http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html – Quentin 2009-11-12 11:42:13

+0

我想说302是一个临时重定向,301是永久的。但我同意这取决于海报试图达到什么。 – Steffen 2009-11-12 11:44:46

1

看看HTTP 1.1 Status Code definitions。不同的地位代码意味着不同的含义,因此鼓励不同的行为。尝试使用最符合你的用例的代码。

2

不同的状态代码有不同的含义。 HTTP规范描述他们:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

301 - 移动永久(和更改

302 - 这里找到

303 - 在这里找到您的回复,但使用GET,即使你用POST

开始了

例如,如果我们考虑一个Atom提要,该提要的URL由于某种原因而发生了更改(可能它正在转移到Amazon S3或其他某些方面)。给定301结果,提要阅读器应该注意,提要已移动并更新它是订阅的,给定一个302,它会从它的新位置得到提要,但是碰到了o每次检查更新时,riginal服务器都会查找原始URI。 (在这种情况下303会很愚蠢)。

2

阅读http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html为答案。

10.3.2 301永久移动

请求的资源已被分配了一个新的永久性URI,该资源的任何将来参考应该使用返回的URI之一。在可能的情况下,具有链接编辑功能的客户端应自动将对Request-URI的引用重新链接到服务器返回的一个或多个新引用。除非另有说明,否则此响应可缓存。

10.3.3 302实测值

请求的资源下不同的URI临时驻留。由于重定向有时可能会发生变化,因此客户端应该继续使用Request-URI来处理将来的请求。如果由Cache-Control或Expires标头字段指示,此响应仅可缓存。

相关问题