是否可以在php中更改$_[';http_referer';]


Is it possible to change $_['http_referer'] in php?

可能重复:
PHP-Referer重定向脚本

我正在寻找改变浏览器http_referer的脚本,例如

我有链接

http://www.mysite.com/page.php?changeRefererTo=mysite2.com&重定向至=www.newwebsite.com

ChangeRefererTo持有一个值,该值将更改浏览器http_referer代码。更改http_referer后,它将直接指向$redirectTo。

用PHP有可能吗?

您不能从服务器更改浏览器对引用者的概念。您可以在PHP中更改$_['http_referer'],但这只会影响PHP看到的内容,而不会影响浏览器看到的内容。如果你能够修改浏览器的引用人,这将是一个安全问题,因为网站可以强制浏览器使用他们想要的任何引用人。

但是,您的PHP脚本可以使用您想要的任何引用器获取页面,然后将结果显示给用户。请参阅PHP-Referer重定向脚本以获得此方面的一个工作示例。

你不能。

referer由浏览器(即客户端)设置。PHP在服务器端运行,无法更改客户端信息。

另一种选择是通过javascript更改它,但浏览器不允许您更改它。如果您绝对必须使用mysite2.com中的referer来访问www.newwebsite.com,则可以使用cURL或类似的库来设置自己的HTTP头。这是假设您无法控制mysite2.com。如果您确实可以控制它,那么您可以从mysite.com重定向到mysite2.com,然后从mysite2.com重定向到www.newwebsite.com