_SERVER["SERVER_NAME"] 默认情况下直接输出 apache 的配置文件 httpd.conf 中的 ServerName 值。 2. 当服务器为非80端口时: _SERVER["HTTP_HOST"] 会输出端口号,例如:zhaoan.org:8080 _SERVER["SERVER_NAME"] 会直接输出 ServerName 值 因此在这种情况下,可以理解为:
两者的区别在于含义不同:假如命令行的地址是:xxx 那么:$_SERVER['HTTP_HOST']=='www.baidu.com'$_SERVER['PHP_SELF']=='/index.php'所以前者是主机地址,后者是脚本文件的绝对路径。
因此$_SERVER['HTTP_HOST']在这样的环境里,取得的值总是程序所在的服务器在其局域网内的ip值。 最后查了不少资料,在symfony框架里面,找到替代的实现方法: 将$host = $_SERVER['HTTP_HOST']; 替换成: $host = isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : (i...
1. 通常情况: _SERVER["HTTP_HOST"] 在HTTP/1.1协议规范下,会根据客户端的HTTP请求输出信息。 _SERVER["SERVER_NAME"] 默认情况下直接输出apache的配置文件httpd.conf中的ServerName值。 2. 当服务器为非80端口时: _SERVER["HTTP_HOST"] 会输出端口号,例如:mimiz.cn:8080 _SERVER["SERVER_NAME"] 会直接...
$_SERVER['HTTP_HOST'] #当前请求的 Host: 头部的内容。 $_SERVER['HTTP_REFERER'] #链接到当前页面的前一页面的 URL 地址。 $_SERVER['HTTP_USER_AGENT'] #当前请求的 User_Agent: 头部的内容。 $_SERVER['HTTPS'] — 如果通过https访问,则被设为一个非空的值(on),否则返回off $_SERVER['REMOTE_...
PHP本地host的配置文件可以使用Apache的httpd.conf文件来进行配置。 首先,找到Apache的安装目录,一般在C:\xampp\apache\conf或者C:\Program Files\Apache Group\Apache2\conf。 然后,用文本编辑器打开httpd.conf文件。 在文件中找到”Listen”和”ServerName”这两个关键字,进行配置: ...
$_SERVER['SERVER_NAME'] 是基于您的Web服务器的配置文件(在我的情况下是Apache2),并根据一些指令而变化:(1)VirtualHost,(2)ServerName,(3)UseCanonicalName等。 $_SERVER['HTTP_HOST'] 基于客户的要求。 因此,在我看来,为了使我的脚本尽可能兼容而使用的正确方法是$_SERVER['HTTP_HOST']。这个假设是否正确...
2. apache的conf中ServerName设置正确 3. HTTP/1.1协议规范 不同点: 1. 通常情况: _SERVER["HTTP_HOST"] 在HTTP/1.1协议规范下,会根据客户端的HTTP请求输出信息。 _SERVER["SERVER_NAME"] 默认情况下直接输出apache的配置文件httpd.conf中的ServerName值。
所以HTTP_HOST = SERVER_NAME:SERVER_PORT $_SERVER["REMOTE_ADDR"] '获取IP isLocked($_SERVER["REMOTE_ADDR"]); '检查是否锁定 $_SERVER详解: 在$_SERVER 中,你也许能够,也许不能够找到下面的这些元素。注意,如果以命令行方式运行 PHP,下面列出的元素几乎没有有效的(或是没有任何实际意义的)。
$_SERVER['GATEWAY_INTERFACE']Returns the version of the Common Gateway Interface (CGI) the server is using $_SERVER['SERVER_ADDR']Returns the IP address of the host server $_SERVER['SERVER_NAME']Returns the name of the host server (such as www.w3schools.com) ...