关于jquery:PHP AJAX 12017 Error when calling Header(Location:)

PHP AJAX 12017 Error when calling Header(Location:)

本问题已经有最佳答案,请猛点这里访问。

我有一个jquery函数,它通过ajax调用一个php文件。在那个php文件里

1
 header('Location: http://www.google.com');

但是这不起作用,页面没有被重定向,jquery ajax调用返回一个错误,不是12017,我找不到关于这个错误号的很多信息。

我启用了输出缓冲,并尝试将头调用放在php文件的顶部,但仍然没有运气。有什么想法吗?谢谢。


我相信如果您使用的是Ajax请求,那么您必须在JavaScript中处理重定向(在发出请求的地方)。

如果您的PHP脚本在发出Ajax请求时设置了响应的位置头,那么它将尝试重定向Ajax请求,而不是浏览器中显示的页面。

您可以尝试在发出请求的地方处理错误(如果看到发出请求的代码,我会更加具体)。

您可以尝试更改脚本,使其返回某种状态代码,然后使用js/jquery处理此状态,并在此处进行重定向:

1
document.location=' *new url to redirect the browser to* '