[转贴]php中HTTP_HOST和SERVER_NAME的用法区别

转贴:http://hi.baidu.com/shashadu/blog/item/bbdc045448677059574e0045.html
php中HTTP_HOST和SERVER_NAME的用法区别
2010-07-23 17:27
php中HTTP_HOST和SERVER_NAME的用法区别: 
这两个通常是可以通用的,但还是有一些小的区别. 
PHP中的SERVER预保留变量中HTTP_HOST 和 SERVER_NAME经常是一样的,原因是服务器使用的是默认的端口80, 
HTTP_HOST将省略不显示,而HTTP服务的默认端口就是80,所以大多数情况下,HTTP_HOST都没有显示这个端口号。 

而如果使用的是ssl链接,那么端口号将被显示出来。 
如果你的程序中有设定端口的功能,则可以考虑使用SERVER_NAME 
否则,建议使用HTTP_HOST 
很经典的语句: 
$server_name = (!empty($_SERVER['HTTP_HOST'])) ? strtolower($_SERVER['HTTP_HOST']) : ((!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : getenv("SERVER_NAME")); 
所以HTTP_HOST = SERVER_NAME:SERVER_PORT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值