我们正在实施一个短网址服务,其中重定向目标将每天更改。网址将由移动设备访问,并始终是GET请求。我试图了解哪种是最适合工作的300型重定向。
AFAIK大多数网址缩短服务使用301重定向(永久移动)。但是,根据规格,303(见其他)和307(暂时移动)重定向似乎是为我们的案例设计的......
答案 0 :(得分:5)
303/307是否也支持301?规范说它们只在HTTP 1.1中实现 - 这个拼写有什么限制?
是/无。
选择301 vs 303/307是否有任何实际的缓存或性能影响。
我不这么认为。
对于GET请求,有没有理由选择303 vs 307?
303的语义与307不同。如果请求的资源是“其他地方”,则303不是正确的答案。
有没有理由使用302重定向?
据我所知,并非如此。它具有与307相同的语义,但UA可能会将POST请求重写为GET。
还有其他需要考虑的事项吗?
请参阅http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p2-semantics-18.html#status.3xx
答案 1 :(得分:1)
网址缩短服务使用301(永久)的原因是:
所有302,303和307都是临时重定向,根本不做这项工作。除非您想要更改目标网址,否则可以使用302.例如example.com/contact重定向到example.com/temp/contact但您打算稍后用example.com/v2/contact替换后者。