资讯专栏INFORMATION COLUMN

HTTP_HOST 和 SERVER_NAME 的区别

zhoutk / 4968人阅读

摘要:的保留变量中和经常是一样的,原因是服务器端口是,那么将省略不显示,而服务的默认端口就是,所以大多数情况下,都没有显示这个端口号。而如果使用的是链接,那么端口号将被显示出来。所以访问请求打印

PHP的SERVER保留变量中 HTTP_HOSTSERVER_NAME 经常是一样的,原因是服务器端口是80,那么HTTP_HOST将省略不显示,而HTTP服务的默认端口就是80,所以大多数情况下,HTTP_HOST都没有显示这个端口号。而如果使用的是ssl链接,那么端口号将被显示出来。

所以HTTP_HOST = SERVER_NAME:SERVER_PORT

访问请求:
12.62.201.12:8013/test.php

打印$_SERVER

print_r($_SERVER);
Array
(
    [HTTP_HOST] => 12.62.201.12:8013
    [HTTP_CONNECTION] => keep-alive
    [HTTP_UPGRADE_INSECURE_REQUESTS] => 1
    [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36
    [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
    [HTTP_REFERER] => http://58.62.201.107:8091/
    [HTTP_ACCEPT_ENCODING] => gzip, deflate
    [HTTP_ACCEPT_LANGUAGE] => zh-CN,zh;q=0.8
    [HTTP_COOKIE] => PHPSESSID=4v3njmj1bot72q66kpo3mcam42
    [PATH] => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/php/bin:/usr/local/apache/bin:/root/bin
    [SERVER_SIGNATURE] => 
    [SERVER_SOFTWARE] => Apache/2.2.31 (Unix) PHP/5.5.36
    [SERVER_NAME] => 12.62.201.12
    [SERVER_ADDR] => 192.168.17.120
    [SERVER_PORT] => 8013
    [REMOTE_ADDR] => 2.2.2.2
    [DOCUMENT_ROOT] => /usr/local/apache/htdocs
    [SERVER_ADMIN] => you@example.com
    [SCRIPT_FILENAME] => /usr/local/apache/htdocs/test.php
    [REMOTE_PORT] => 2104
    [GATEWAY_INTERFACE] => CGI/1.1
    [SERVER_PROTOCOL] => HTTP/1.1
    [REQUEST_METHOD] => GET
    [QUERY_STRING] => 
    [REQUEST_URI] => /test.php
    [SCRIPT_NAME] => /test.php
    [PHP_SELF] => /test.php
    [REQUEST_TIME_FLOAT] => 1501652634.963
    [REQUEST_TIME] => 1501652634
)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25562.html

相关文章

  • nginx `$host` `$http_host` 区别

    摘要:,注意,这里的是一个通配符,通配的是请求头里的属性,例如表示请求头里属性的值,同理,指的就是请求头里的属性。 $host是core模块内部的一个变量 当请求头里不存在Host属性或者是个空值,$host则等于server_name 如果请求头里有Host属性,那么$host等于Host属性除了端口号的部分,例如Host属性是www.example.com,那么$host就是www.e...

    BigTomato 评论0 收藏0
  • Nginx正向代理反向代理配置

    摘要:前言的反向代理功能应该是诸多功能里面最常用的一个功能了,正向代理的话可能使用的场景比较少,平时接触的也不多,本章内容仅包含这两个功能的基本使用配置,因为是本地版本的,所以不包含负载均衡相关的内容。 前言 Nginx的反向代理功能应该是Nginx诸多功能里面最常用的一个功能了,正向代理的话可能使用的场景比较少,平时接触的也不多,本章内容仅包含这两个功能的基本使用配置,因为是本地版本的,所...

    learn_shifeng 评论0 收藏0
  • Nginx 重定向时获取域名

    摘要:如果你在处理重定向时要获取原请求的域名比如到,请用而不是。问题和解决方案今天碰到一个问题,服务器上一个子域名的请求重定向到另一个子域名上面去了。修改后的配置如下变量会按照以下优先级获取域名中的域名信息。 TL;DR 如果你在处理 Nginx 重定向时要获取原请求的域名(比如 HTTP 到 HTTPS),请用 $host 而不是 $server_name 。 问题和解决方案 今天碰到一个...

    _Suqin 评论0 收藏0
  • php获取当前访问url一些方法

    摘要:测试网址获取域名或主机地址获取网页地址获取网址参数获取用户代理获取完整的包含端口号的完整只取路径 #测试网址: http://localhost/blog/testurl.php?id=5 //获取域名或主机地址 echo $_SERVER[HTTP_HOST].; #localhost //获取网页地址 echo $_SERVER[PHP_SELF].; #/blog...

    phodal 评论0 收藏0
  • 用PHP获取网页种种URL

    摘要:获取域名或主机地址获取网页地址获取网址参数获取用户代理获取完整的包含端口号的完整只取路径原文来自 //获取域名或主机地址 echo $_SERVER[HTTP_HOST].; #localhost //获取网页地址 echo $_SERVER[PHP_SELF].; #/blog/testurl.php //获取网址参数 echo $_SERVER[QUERY_STRING]...

    zhichangterry 评论0 收藏0

发表评论

0条评论

zhoutk

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<