linux 下的getenv()函数

linux下的getenv()函数是个获取变量的函数,常用于linux下的C语言编程,不同于shell下使用env指令获取的环境变量。

该函数主要用于获取网络相关的环境变量。

例如

if ((https = getenv("HTTPS")) == NULL) {
error_check("HTTP ERROR: Can not get server ip!<br/>");
return UAV_ERROR;

}else if(strstr(https, "on") != NULL){
  https_flg =1;
}
该段程序可以获取HTTPS的开关情况,如果使用的是HTTPS访问那么HTTPS的值位ON,反之为off.

环境变量大多是用于CGI的。

“SERVER_NAME”
当前运行脚本所在服务器主机的名称。如果该脚本运行在一个虚拟主机上,该名称是由那个虚拟主机所设置的值决定。
“SERVER_SOFTWARE”
服务器标识的字串,在响应请求时的头信息中给出。
“SERVER_PROTOCOL”
请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。
“REQUEST_METHOD”
访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。
“QUERY_STRING”
查询(query)的字符串(URL 中第一个问号? 之后的内容)。
“DOCUMENT_ROOT”
当前运行cgi所在的文档根目录。在服务器配置文件中定义。
“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。因此,这个变量不总是真实正确的。
当前请求的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”
当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。
“SCRIPT_NAME”
包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 包含当前文件绝对路径和文件名(例如包含文件)。
“REQUEST_URI”


sitemap