PHP中的$_SERVER['']变量具体代表什么?

2026-04-27 21:432阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计383个文字,预计阅读时间需要2分钟。

PHP中的$_SERVER['']变量具体代表什么?

PHP中的`$_SERVER['HTTP_HOST']`与`$_SERVER['SERVER_NAME']`的区别:- 通过:`$_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']`可以获取域名及请求的URL。

1. 变量`HTTP_HOST`和`SERVER_NAME`都用于获取当前域名。

2.当满足以下条件时:

- 1. 变量`HTTP_HOST`包含端口号。 - 2. 变量`SERVER_NAME`不包含端口号。 - 3. 条件满足时,输出条件满足。

PHP中的$_SERVER['HTTP_HOST']与$_SERVER['SERVER_NAME']的区别

通过:$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']可以获取域名及请求的URL。

1、变量HTTP_HOST和SERVER_NAME都是获取当前域名

2、当满足以下3个条件的时候,两者会输出相同的信息

   A、服务器端口号为80

   B、Apache中的conf中的ServerName设置正确

   C、HTTP/1.1协议规范

3、不同点

   A、$_SERVER['HTTP_HOST']:在HTTP/1.1协议下,会根据客户端的HTTP请求输出信息;

      $_SERVER['SERVER_NAME']:默认情况下会直接输出Apache的配置文件httpd.conf中的ServerName的值

   B、当服务器的端口号不是80时

      $_SERVER['HTTP_HOST']会输出端口号,例如“www.funwall.cn:8080”

      $_SERVER['SERVER_NAME']直接输出ServerName的值,例如“www.funwall.cn”

       在这种情况下,可以理解成HTTP_HOST=SERVER_NAME:SERVRE_PORT

PHP中的$_SERVER['']变量具体代表什么?

   C、当配置文件httpd.conf中的ServerName与HTTP/1.0下的域名不一致的时候,假如httpd.conf配置如下:

      <virtualhost*>

           ServerNamefunwall.cn

           ServerAliaswww.funwall.cn

      </virtualhost>

      客户端访问域名:www.funwall.cn

      $_SERVER[HTTP_HOST]输出:www.funwall.cn

      $_SERVER[SERVER_NAME]输出:funwall.cn

      因此,在实际中应该用$_SERVER[HTTP_HOST]获取域名比较保险

       

本文共计383个文字,预计阅读时间需要2分钟。

PHP中的$_SERVER['']变量具体代表什么?

PHP中的`$_SERVER['HTTP_HOST']`与`$_SERVER['SERVER_NAME']`的区别:- 通过:`$_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']`可以获取域名及请求的URL。

1. 变量`HTTP_HOST`和`SERVER_NAME`都用于获取当前域名。

2.当满足以下条件时:

- 1. 变量`HTTP_HOST`包含端口号。 - 2. 变量`SERVER_NAME`不包含端口号。 - 3. 条件满足时,输出条件满足。

PHP中的$_SERVER['HTTP_HOST']与$_SERVER['SERVER_NAME']的区别

通过:$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']可以获取域名及请求的URL。

1、变量HTTP_HOST和SERVER_NAME都是获取当前域名

2、当满足以下3个条件的时候,两者会输出相同的信息

   A、服务器端口号为80

   B、Apache中的conf中的ServerName设置正确

   C、HTTP/1.1协议规范

3、不同点

   A、$_SERVER['HTTP_HOST']:在HTTP/1.1协议下,会根据客户端的HTTP请求输出信息;

      $_SERVER['SERVER_NAME']:默认情况下会直接输出Apache的配置文件httpd.conf中的ServerName的值

   B、当服务器的端口号不是80时

      $_SERVER['HTTP_HOST']会输出端口号,例如“www.funwall.cn:8080”

      $_SERVER['SERVER_NAME']直接输出ServerName的值,例如“www.funwall.cn”

       在这种情况下,可以理解成HTTP_HOST=SERVER_NAME:SERVRE_PORT

PHP中的$_SERVER['']变量具体代表什么?

   C、当配置文件httpd.conf中的ServerName与HTTP/1.0下的域名不一致的时候,假如httpd.conf配置如下:

      <virtualhost*>

           ServerNamefunwall.cn

           ServerAliaswww.funwall.cn

      </virtualhost>

      客户端访问域名:www.funwall.cn

      $_SERVER[HTTP_HOST]输出:www.funwall.cn

      $_SERVER[SERVER_NAME]输出:funwall.cn

      因此,在实际中应该用$_SERVER[HTTP_HOST]获取域名比较保险