日期:2010-09-18 浏览次数:21131 次
在你每次请求Web页面的时候,后台有大量的活动在进行:你的请求被送给一个DNS服务器,IP地址被找到,与相应的Web服务器联系,发回的数据流被解码,再由你的Web浏览器生成为HTML页面。除了对真正的HTML内容的请求,Web服务器还在其响应中包括了很多重要的“服务器变量”。这些变量含有Web服务器环境的信息——它的名字、IP地址和软件——以及当前脚本的执行环境——脚本名字和路径,以及查询字符串。
这些变量常常被聪明的Web开发人员用来增加脚本动态性和稳定性。表格A里的文档简要列出了10个更加有用的服务器变量,Web服务器在响应HTTP请求的时候一般都会发送这些变量,这个表格还会告诉你何时以及如何在你的Web网站上使用它们。
注:并不是所有的Web服务器上都有这些变量。
要获得关于这些以及其他服务器变量的更多信息,请参考《CGI 1.1规范》。
表格A
变量 | 描述 | 用途 |
HTTP_USER_AGENT | 发起请求的客户端所发送的身份字符串。例如:Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051111 Firefox/1.5。 | 客户端的检测和登录;创建用于不同浏览器的不同代码。 |
HTTP_ACCEPT_ENCODING | 客户端能够解码的编码列表。 | 比如,使用GZIP编码程序来压缩页面数据,以提高传输的速度。 |
REMOTE_ADDR | 发送请求的客户端的IP地址。 | 获取用户的地理位置,用于有针对性的广告或者本地化信息的取回;限制对特定IP地址或者IP地址群的访问。 |
DOCUMENT_ROOT | 服务器文档的根目录(在配置文件里定义)。 | 在通过Web应用程序上传、复制或者移动文件的时候创建相对/绝对路径。 |
SERVER_SOFTWARE | 服务器的签名,以表明服务器的名字和版本,以及在上面运行的所有软件。例如:Apache/2.0.55 (Win32)。 | 能够识别服务器。 |
QUERY_STRING | 跟在被请求的URL里“?”之后的变量-值对的列表。 | 取回或者分析通过URL发送给服务器的变量-值对。 |
REQUEST_METHOD | 这个方法用来进行URL请求。例如:GET, POST or PUT。 | 识别用来请求页面的方法,访问用于变量取回的相应命名空间。 |
SCRIPT_NAME | 被请求资源的服务器路径(相对于文档的根目录)。 | 取回当前执行的脚本或者资源的名字和路径。 |
HTTP_ACCEPT_CHARSET | 客户端能够收到的字符集。 | 用首选的字符集发送页面数据。 |
REMOTE_USER | 在使用HTTP身份验证的时候,用于身份验证的用户名。 | 内容个性化;信任书的验证。 |