Codeigniter:Redirect()刷新/位置参数

时间:2013-10-16 19:05:58

标签: codeigniter redirect

任何人都可以解释为redirect()函数使用'location'和'refresh'参数之间的具体区别。它是否仅适用于Windows使用“刷新”时出现错误或者它实际上是否用于更重要的目的?

1 个答案:

答案 0 :(得分:7)

CodeIgniter的redirect函数(位于system/helpers/url_helper.php)允许您使用PHP的header()函数发送HTTP标头。

location 标头指示网络浏览器加载网页,并使用 3xx HTTP状态代码发送。例如: 301 - 暂时移动或 302 - 永久移动(CodeIgniter的默认设置)。

  

Location response-header字段用于重定向收件人   到Request-URI以外的位置以完成请求   或识别新资源。

Refresh 实际上是由Netscape创建的专有扩展程序。它不是official standards的一部分,但大多数网络浏览器都采用了它并支持它。


您可能想要使用其中一个的原因有多种 - location应该受到符合标准的所有浏览器的支持,refresh可能不支持。 refresh可以'break' the back button浏览器(location不会)并且可能有performance issueslocation在HTTP代码中发送重定向的原因,但refresh没有;它只指示浏览器刷新指定的页面。