一般来说,这样子不会遇到什么问题,在一些常见的php框架中,如PFC3和FLEA也是基于该预定义变量。

然而最近在做的一个项目,程序移交到客户手里测试时,竟然发现程序的跳转总是会出错。

最后找出原因:$_SERVER['HTTP_HOST']在客户的环境里,取得的值总是程序所在的服务器在其局域网内的ip值。

究其原因,是因为,客户的公司通过一台服务器连接至因特网,而我们的程序所在的服务器,是通过域名映射出来的,也就是中间有个“代理”的过程。因此$_SERVER['HTTP_HOST']在这样的环境里,取得的值总是程序所在的服务器在其局域网内的ip值。

最后查了不少资料,在symfony框架里面,找到替代的实现方法:


$host =$_SERVER['HTTP_HOST'];

换成

$host = isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '');



(转自https://www.bbsmax.com/A/rV57KQWG5P/)



相关推荐

服务器网站日志查看插件

无需下载日志.直接创建一个 log.php 写入代码.然后传到任意一个网站下面去,就可以查看所有网站的日志了访问地址就是 你的网站 /log.php?mima=你的密码效果图:下面是php代码:(需要

小米手机 亲情守护 服务器异常(完美解决方法)

当红米或者小米手机打开亲情守护的时候.发现提示服务器异常的原因:一直在转啊转.二维码加载不出来怎么办呢?原因:这个软件是系统自带的.版本可能有点老了,服务器地址发生了变化,所以会显示服务器异常解决方

php错误500:该网页无法正常运作,目前无法处理此请求 http error 500

处理大数据的时候.最好加上set_time_limit(0);//设置网页超时时间无限制 ini_set('memory_limit', '-1');//设置内存无限

http状态码大全

内容较长.请用按 Ctrl+F 键 搜索状态码简单一句话介绍:100 这个临时响应是用来通知客户端它的部分请求已经被服务器接收。101 服务器已经理解了客户端的请求。102 代表处理将被继续执行。2

php 5.6 mysql8.0 出现the server requested authentication method unknown to the client

php5.6 + mysql8.0 出现mysql连接失败的错误The server requested authentication method unknown to the client服务器请

vmware12虚拟机安装windows server 2003系统教程图解

正则表达式匹配指定后缀的域名

匹配指定后缀的域名,其中里面的后缀可以随便换 后缀带点的 可以放前面这个只适合用来校验域名是否是一个符合要求的顶级域名[a-z0-9-]+\\.(com\\.cn|net\\.cn|org\\.cn|gov\\

域名的陷阱与价值

================站群之路 第一章=======================马甲XX老大,这段时间一直在看A5,也联系了中介,没有人收收录过万的站,就是听说是站群都不要。。。马甲XX

13元抢注备案权重收录等过期域名方法1.2版

1,土豪请绕路,抢注备案的过期域名可以在大陆vps或者空间,服务器商哪里直接使用域名解析做站,具体可以使用多久备案才会掉,全靠运气,也可以使用香港vps做站也行,百度对老域名与备案域名是否有优待这个每

检测域名是否被qiang

1.进行全球检测:http://ping.chinaz.com 查询如果显示海外90%以上可以访问,国内90%以上的不能访问,国内大部分地区被封这个域名也残废了2.你选出来的域名给你的qq小号发一下,