检测$ _SERVER的值[' SERVER_ADDR']

时间:2015-07-22 04:25:59

标签: php

我在两个apache上有两个Web应用程序,并将其命名为

192.168.0.20:8082       and  192.168.0.20:8088     (local) or 
http://automation:8082  and  http://automation:8088(local) or
80.191.155.144:8082     and  80.191.155.144:8088   (public).

现在我希望从application1重定向到application2或application2到appication1。 例如,从

重定向
http://automation:8082/showList.php to http://automation:8088/detailList.php 
192.168.0.20:8082/showList.php      to 192.168.0.20:8088/detailList.php 
80.191.155.144:8082/showList.php    to 80.191.155.144:8088/detailList.php 

如何找到url有本地IP(192.168.0.20)或(自动化)或公共(80.191.155.141)?并重定向基于。 我使用$_SERVER['REMOTE_ADDR'],但这在http://automation返回ip6

2 个答案:

答案 0 :(得分:2)

$_SERVER['HTTP_Host']包含HTTP Host:标头中指定的字符串。这通常包含客户端用于连接的URL的主机名部分。

使用Apache mod_rewrite模块执行重定向可能不如在每个PHP脚本中发送302更复杂。

答案 1 :(得分:0)

您应该使用$_SERVER["HTTP_HOST"]

$host=explode(':',$_SERVER["HTTP_HOST"])[0];

$host:8082/showList.php重定向到$host:8088/detailList.php