Php 标题位置相对路径兼容性

Php 标题位置相对路径兼容性,php,html,redirect,header,Php,Html,Redirect,Header,这相对位置html标题是否与所有平台上的所有浏览器完全兼容?有什么标准吗 Location: some_script.php?la=2&po=2030 我的意思是,它是否总是重定向到当前目录下的某个_script.php?标准如下: header('Location: http://www.mywebsite.com/yourpage.php?id=32', TRUE, 302); 但是为了回答您的问题,如果您不首先放斜杠或完整的URL,它将重定向到当前文件夹中的页面X 这里有一个想

相对位置html标题是否与所有平台上的所有浏览器完全兼容?有什么标准吗

Location: some_script.php?la=2&po=2030

我的意思是,它是否总是重定向到当前目录下的某个_script.php?

标准如下:

header('Location: http://www.mywebsite.com/yourpage.php?id=32', TRUE, 302);
但是为了回答您的问题,如果您不首先放斜杠或完整的URL,它将重定向到当前文件夹中的页面X

这里有一个想法,我建议你做的每一个网站。在主文件(您使用的主php文件,如config或其他文件)中,创建如下内容:

define('URL', 'http://www.mywebsite.com/');
因此,当您创建重定向、链接或其他内容时,您可以执行以下操作:

header('Location: '.URL.'yourpage.php?id=32', TRUE, 302);

编辑:2017年11月。正如下面@jordanbtucker所指出的,HTTP规范在2014年6月进行了更新(这篇文章是从2012年开始的),允许在位置标头中使用相对URI。

由于是PHP,浏览器甚至不知道标头,它只是注意到它正在被重定向,因为PHP是在服务器上执行的。@11684:客户端的浏览器绝对会收到一个位置头。你认为它是如何决定改变位置的?@11684你错了。PHP是在服务器上执行的,是的。但是PHP会将标题发送到浏览器(客户端),客户端可以用它做任何他想做的事情。可能是@DavidBélanger的副本我不知道,谢谢你向我学习!是的,我已经在使用相对变量及其对我的作用,但我怀疑它不适用于所有用户。我可以添加url的一部分以获得绝对路径,但这会给在本地计算机上清除此sctipt的bug带来一些麻烦,因为在we some_script.php上总是在,将服务器主机添加到url并不是问题,而是在子文件夹的本地计算机脚本上…好的。那我建议你看看。好的方法、最好的方法以及它的工作方式是您需要提供完整的URL。@abrahab我不知道为什么在本地计算机子文件夹上有完整的URL会有问题?HTTP规范已经更新,允许相对URI作为位置头的值。