预定义变量$_SERVER

PHP的getenv函数的参数列表
$_SERVER["HTTP_X_FORWARDED_FOR"]

以阻止普通的匿名代理


$spager=$_SERVER["SERVER_NAME"];
                 or
$spager=getenv('SERVER_NAME');


“PHP_SELF”
当前正在执行脚本的文件名,与 document root 相关。举例来说,在 URL 地址为 [url]http://example.com/test.php/foo.bar[/url] 的脚本中使用 $_SERVER['PHP_SELF'] 将会得到 /test.php/foo.bar 这个结果。__FILE__ 常量包含当前(例如包含)文件的绝对路径和文件名。

如果 PHP 以命令行方式运行,该变量在 PHP 4.3.0 之前无效。

“argv”
传递给该脚本的参数。当脚本运行在命令行方式时,argv 变量传递给程序 C 语言样式的命令行参数。当调用 GET 方法时,该变量包含请求的数据。

“argc”
包含传递给程序的命令行参数的个数(如果运行在命令行模式)。

“GATEWAY_INTERFACE”
服务器使用的 CGI 规范的版本。例如,“CGI/1.1”。

“SERVER_NAME”
当前运行脚本所在服务器主机的名称。如果该脚本运行在一个虚拟主机上,该名称是由那个虚拟主机所设置的值决定。

“SERVER_SOFTWARE”
服务器标识的字串,在响应请求时的头信息中给出。

“SERVER_PROTOCOL”
请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。

“REQUEST_METHOD”
访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

注: 如果请求的方式是 HEAD,PHP 脚本将在送出头信息后中止(这意味着在产生任何输出后,不再有输出缓冲)。

“REQUEST_TIME”
请求开始时的时间戳。从 PHP 5.1.0 起有效。

“QUERY_STRING”
查询(query)的字符串(URL 中第一个问号 ? 之后的内容)。

“DOCUMENT_ROOT”
当前运行脚本所在的文档根目录。在服务器配置文件中定义。

“HTTP_ACCEPT”
当前请求的 Accept: 头信息的内容。

“HTTP_ACCEPT_CHARSET”
当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。

“HTTP_ACCEPT_ENCODING”
当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。

“HTTP_ACCEPT_LANGUAGE”
当前请求的 Accept-Language: 头信息的内容。例如:“en”。

“HTTP_CONNECTION”
当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。

“HTTP_HOST”
当前请求的 Host: 头信息的内容。

“HTTP_REFERER”
链接到当前页面的前一页面的 URL 地址。不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是真实正确的。

“HTTP_USER_AGENT”
当前请求的 User-Agent: 头信息的内容。该字符串表明了访问该页面的用户代理的信息。一个典型的例子是:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)。也可以使用 get_browser() 得到此信息。

“HTTPS”
如果脚本是通过 HTTPS 协议被访问,则被设为一个非空的值。

“REMOTE_ADDR”
正在浏览当前页面用户的 IP 地址。

“REMOTE_HOST”
正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR。

注: 必须配置 Web 服务器来建立此变量。例如 Apache 需要在 httpd.conf 中有 HostnameLookups On。参见 gethostbyaddr()。

“REMOTE_PORT”
用户连接到服务器时所使用的端口。

“SCRIPT_FILENAME”
当前执行脚本的绝对路径名。

注: 如果脚本在 CLI 中被执行,作为相对路径,例如 file.php 或 ../file.php,$_SERVER['SCRIPT_FILENAME'] 将包含用户指定的相对路径。


“SERVER_ADMIN”
该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值。

“SERVER_PORT”
服务器所使用的端口。默认为“80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。

“SERVER_SIGNATURE”
包含服务器版本和虚拟主机名的字符串。

“PATH_TRANSLATED”
当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。

注: PHP 4.3.2 之后,PATH_TRANSLATED 在 Apache 2 SAPI 模式下不再和 Apache 1 一样隐含赋值,而是若 Apache 不生成此值,PHP 便自己生成并将其值放入 SCRIPT_FILENAME 服务器常量中。这个修改遵守了 CGI 规范,PATH_TRANSLATED 仅在 PATH_INFO 被定义的条件下才存在。

Apache 2 用户可以使用 httpd.conf 中的 AcceptPathInfo On 来定义 PATH_INFO。

“SCRIPT_NAME”
包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 包含当前文件的绝对路径和文件名(例如包含文件)。

“REQUEST_URI”
访问此页面所需的 URI。例如,“/index.html”。

“PHP_AUTH_DIGEST”
当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。

“PHP_AUTH_USER”
当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。

“PHP_AUTH_PW”
当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。

“AUTH_TYPE”
当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。<?
$array = array(
                "REMOTE_ADDR",
                "DOCUMENT_ROOT",
                "GATEWAY_INTERFACE",
                "SERVER_SOFTWARE",
                "SERVER_NAME",
                "SERVER_PROTOCOL",
                "SERVER_PORT",
                "SERVER_ADMIN",
                "SERVER_SIGNATURE",
                "REQUEST_METHOD",
                "REQUEST_URI",
                "PATH_INFO",
                "PATH_TRANSLATED",
                "SCRIPT_NAME",
                "SCRIPT_FILENAME",
                "QUERY_STRING",
                "REMOTE_HOST",
                "REMOTE_ADDR",
                "REMOTE_USER",
                "REMOTE_IDENT",
                "CONTENT_TYPE",
                "CONTENT_LENGTH",
                "HTTP_ACCEPT",
                "HTTP_ACCEPT_CHARSET",
                "HTTP_ACCEPT_LANGUAGE",
                "HTTP_ENCODING",
                "HTTP_USER_AGENT",
                "HTTP_CONNECTION",
                "HTTP_HOST",
                "HTTP_REFERER",
                "AUTH_TYPE"
               );

echo '<center>';
echo '<table border="1" cellspacing="0" cellpadding="0">';
echo '<caption>CGI Environment Variables</caption>';
echo '<tr><th>Name<th>Value</tr>';

$count = count($array);
for($i=0;$i<$count;$i++){
    $value = getenv($array[$i]);
    if($value){
       echo "<tr><td>$array[$i]<td>" . $value . "</tr>";
    }
//下面的语句也可以哦
//    if(isset($$array[$i])){
//       echo "<tr><td>$array[$i]<td>" . $$array[$i] . "</tr>";
//    }
}

echo '</table>';
echo '</center>';
?>
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417872.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql教程为什么很多都用dos_在dos操作mysql基础教程详解

第一招、mysql服务的启动和停止net stop mysqlnet start mysql第二招、登陆mysql语法如下&#xff1a; mysql -u用户名 -p用户密码键入命令mysql -uroot -p&#xff0c; 回车后提示你输入密码&#xff0c;输入12345&#xff0c;然后回车即可进入到mysql中了&#xff0c;mysql的…

今天刚开通博客,很开心

今天刚开通博客&#xff0c;很开心&#xff0c;我是一名大三的一名学生&#xff0c;机电专业的&#xff0c;下个月都要出去实习&#xff0c;很忐忑&#xff0c;也对外面的世界充满这憧憬.....明天继续&#xff0c;今天太晚了。转载于:https://www.cnblogs.com/namei/p/6002480.…

postgresql查询mysql库_postgresql 查看数据库,表,索引,表空间以及大小

客户要求用pgsql&#xff0c;所在服务器装了一下pgsql&#xff0c;我出了一个pgsql的分类&#xff0c;看这篇文章前&#xff0c;把这个分类下的文章都可以看一下&#xff0c;这是我熟悉pgsql的一套流程。以前搞过一次pgsql&#xff0c;很早了。1,查看数据库playboy> \l //\加…

配置linux系统自带apache+php+mysql

######################配置apache服务####################################cd /etc/httpd/conf#gedit httpd.conf#编辑配置文件Listen 80Listen 10.1.8.39:8080#添加监听端口LoadModule php5_module /usr/lib/httpd/modules/libphp5.soAddType application/x-httpd-php .php …

行为类模式(二):命令(Command)

定义 将一个请求封装成一个对象&#xff0c;从而让你使用不同的请求把客户端参数化&#xff0c;对请求排队或者记录请求日志&#xff0c;可以提供命令的撤销和恢复功能。 UML 优点 能比较容易的设计一个命令队列可以较容易的将命令加入日志允许接收请求的一方是否处理请求可以容…

win7 nginx mysql php_windows7配置Nginx+php+mysql的详细教程

最近在学习PHP&#xff0c;想把自己的学习经历记录下来&#xff0c;并写一些经验&#xff0c;仅供参考交流。此文适合那些刚刚接触PHP&#xff0c;想要学习并想要自己搭建NginxPHPMysqL环境的同学。当然&#xff0c;你也可以选择集成好的安装包&#xff0c;比如 wamp等&#xf…

我的虚拟化设想(My virtualization vision)

王洪岐&#xff08;Wang Hongqi&#xff09; 当前的服务器虚拟化技术所虚拟的操作系统都是完整的操作系统&#xff0c;我认为这样会在一定程度上造成了资源的浪费和技术难度的增加&#xff1a;多个操作系统就有多个操作硬件设备的操作程序&#xff0c;虚拟平台要在操作系统底层…

mysql start with connect by_MYSQL实现Oracle的Start with…Connect By递归树查询

最近接触一个老项目&#xff0c;最初适配的数据库是oracle 后来迁移到mysql 。这个迁移是由一个已经离职的新手做的。这个新手对于很多oracle特有的函数及存储过程都没有进行迁移。导致系统很多功能都BUG了。失效了。既然我遇到了&#xff0c;就尽量进行解决。刚刚遇到了一个存…

Kmplayer播放器 绿色免安装版 2016 中文版

软件名称&#xff1a; Kmplayer播放器 绿色免安装版 软件语言&#xff1a; 简体中文 授权方式&#xff1a; 免费软件 运行环境&#xff1a; Win 32位/64位 软件大小&#xff1a; 42.8MB 图片预览&#xff1a; 软件简介: Kmplayer播放器绿色免安装版&#xff0c;多功能的影音播放…

java 关闭时_java – 活动关闭时服务停止

我已经阅读了一些与这个问题相关的答案,它们似乎都是一样的&#xff1a;“使用START_STICKY运行您的服务”“在前台运行您的服务”“使用startService运行您的服务,不要绑定它”我正在做所有这些事情,我的服务STILL关闭并在每次关闭活动时重新启动.这不是IntentService.我也没有…

ie6 offsetWidth/offsetHeight无效

ie6 offsetWidth/offsetHeight无效可采用手动获取&#xff1a;offsetWidthparseInt(node.style.width)parseInt(node.style.paddingLeft)parseInt(node.style.paddingRight);offsetHeightparseInt(node.style.height)parseInt(node.style.paddingTop)parseInt(node.style.paddi…

什么是反向代理,如何区别反向与正向代理

转自&#xff1a;http://blog.csdn.NET/shixing_11/article/details/7106241 一直对反射代理的反向不知道如何理解&#xff0c;经过百度知道&#xff0c;再结合下面这幅图&#xff0c;总算弄清楚一点了。简单的说从一个局域网出来到服务端为正向&#xff0c;从客户端要进入一个…

java socket 浏览器_Socket实现Java和浏览器交互。

昨天写了段小程序&#xff0c;现贴出来看看。以下是socket的简单介绍。获取两台联通的机器之间的IP和端口号等信息。import java.io.IOException;import java.net.Socket;public class SockerDemo {public static void main(String[] args) throws IOException {Socket socket …

C常用函数

///printf()%d 整数%f 浮点%p 指针地址 ///bzero(void *s, int n);原型&#xff1a;extern void bzero(void *s, int n);  用法&#xff1a;#include <string.h>  功能&#xff1a;置字节字符串s的前n个字节为零。 ///FD_ZERO(fd_set *fdset);将指定的文件描述符集清…

HashMap和ConcurrentHashMap的区别,HashMap的底层源码。

Hashmap本质是数组加链表。根据key取得hash值&#xff0c;然后计算出数组下标&#xff0c;如果多个key对应到同一个下标&#xff0c;就用链表串起来&#xff0c;新插入的在前面。 ConcurrentHashMap&#xff1a;在hashMap的基础上&#xff0c;ConcurrentHashMap将数据分为多个s…

mudos开发简介

首先我们应该知道mudos提供哪些服务我们可以从许多lib中找到我们需要什么假设我们的lib还是拥有很多现在mud的特性 比如战斗 人物和世界我们需要一些最基本的东西比如 master.c user.c login.c <include>你完全可以使用不一样的文件名 甚至修改出自己的mudos 你也可以完全…

java hanoi塔问题_java 解决汉诺塔问题

//汉诺塔问题//HanYang 2016/10/15import java.util.Scanner;//输出public class Hanuota {public static void Show(String a,String b){System.out.print(" " a "->" b " " );}//从a移到cpublic static void Fun(int n, String a,Strin…

心跳防护程序

心跳防护程序的作用心跳防护程序用于实现无人值守的程序的自维护功能&#xff0c;使得被防护程序由于某种异常而导致崩溃时可以自动重新启动&#xff0c;满足无人值守的环境要求。心跳防护程序适用于那些需要无人值守&#xff0c;长期运行&#xff0c;但程序由于不确定性因素有…

[水煮 ASP.NET Web API2 方法论](1-1)在MVC 应用程序中添加 ASP.NET Web API

问题 怎么样将 Asp.Net Web Api 加入到现有的 Asp.Net MVC 项目中 解决方案 在 Visual Studio 2012 中就已经把 Asp.Net Web Api 自动地整合到了 MVC 项目模板中。自 Visual Studio 2013 以后&#xff0c;创建 ASP.Net Web应用程序使用的是一种新的"One ASP.NET"项目…

java io流文件损坏_java使用io流下载.docx. xlsx文件,出现文件损坏提示

介绍在使用io流下载服务器上的资源文件时&#xff0c;出现以下提示&#xff1a;但是选择“是”后文件可以正常打开参考 代码如下&#xff1a;[codesyntax lang"java"]RequestMapping(value "downLoadInstruction")public void downLoadInstruction(HttpSe…