重定向到php中的url位置,并带有要传递的头参数

时间:2013-05-30 09:14:28

标签: php http redirect header

我试图在php中翻译网址。 我的网址是这样的:

Source : http://www.someserver.com/image.png

我想将其重定向到服务器但具有特定标头:

Destination : http://www.someotherserver.com/image.png
Destination header : X-Auth-Token : somethingsomething

主要问题是没有下载文件而只是添加头参数(一个身份验证令牌)并重新定位。 所以我尝试使用header php命令进行重定向:

header("Content-Type: image/png");
header("Location: http://www.someotherserver.com/image.png");

我尝试添加标头但是给header命令的参数不会复制到location命令中。如何将标头令牌传递给此标头命令?

1 个答案:

答案 0 :(得分:0)

  

我想将其重定向到服务器但具有特定标头

首先,您应该意识到HTTP 响应标头和HTTP 请求标头之间有什么区别。

header("Content-Type: image/png");
header("Location: http://www.someotherserver.com/image.png");

这些是您的服务器发送到客户端响应标头。

由于您使用位置标头指示客户端请求新资源,因此客户端将抛弃Content-Type标头 - 在重定向之前不响应该请求而显示任何内容,因此内容类型为no兴趣。

客户端向位置标头中的(其他)服务器发出新请求 - 因此该请求的任何其他请求标头必须来自客户端。您的服务器无法影响客户端可能使用该请求发送的其他标头。 (除非您编写自己的客户端,否则会在下次请求时传递收到的响应标头。)