[ASP/ASP.NET]Request.ServerVariables各參數說明集合

參數

服務器環境變量
指定要檢索的服務器環境變量名。可以使用下面列出的值。
變量 說明
ALL_HTTP 客戶端發送的所有 HTTP 標題文件。
ALL_RAW 檢索未處理表格中所有的標題。ALL_RAW 和 ALL_HTTP 不同,ALL_HTTP 在標題文件名前面放置 HTTP_ prefix,並且標題名稱總是大寫的。使用 ALL_RAW 時,標題名稱和值只在客戶端發送時纔出現。
APPL_MD_PATH 檢索 ISAPI DLL 的 (WAM) Application 的元數據庫路徑。
APPL_PHYSICAL_PATH 檢索與元數據庫路徑相應的物理路徑。IIS 通過將 APPL_MD_PATH 轉換爲物理(目錄)路徑以返回值。
AUTH_PASSWORD 該值輸入到客戶端的鑑定對話中。只有使用基本鑑定時,該變量纔可用。
AUTH_TYPE 這是用戶訪問受保護的腳本時,服務器用於檢驗用戶的驗證方法。
AUTH_USER 未被鑑定的用戶名。
CERT_COOKIE 客戶端驗證的唯一 ID,以字符串方式返回。可作爲整個客戶端驗證的簽字。
CERT_FLAGS 如有客戶端驗證,則 bit0 爲 1。

如果客戶端驗證的驗證人無效(不在服務器承認的 CA 列表中),bit1 被設置爲 1。

CERT_ISSUER 用戶驗證中的頒佈者字段(O=MS,OU=IAS,CN=user name,C=USA)。
CERT_KEYSIZE 安全套接字層連接關鍵字的位數,如 128。
CERT_SECRETKEYSIZE 服務器驗證私人關鍵字的位數。如 1024。
CERT_SERIALNUMBER 用戶驗證的序列號字段。
CERT_SERVER_ISSUER 服務器驗證的頒發者字段。
CERT_SERVER_SUBJECT 服務器驗證的主字段。
CERT_SUBJECT 客戶端驗證的主字段。
CONTENT_LENGTH 客戶端發出內容的長度。
CONTENT_TYPE 內容的數據類型。同附加信息的查詢一起使用,如 HTTP 查詢 GET、 POST 和 PUT。
GATEWAY_INTERFACE 服務器使用的 CGI 規格的修訂。格式爲 CGI/revision。
HTTP_<HeaderName> HeaderName 存儲在標題文件中的值。未列入該表的標題文件必須以 HTTP_ 作爲前綴,以使 ServerVariables 集合檢索其值。

注意 服務器將 HeaderName 中的下劃線(_)解釋爲實際標題中的破折號。例如,如果您指定 HTTP_MY_HEADER,服務器將搜索以 MY-HEADER 爲名發送的標題文件。

HTTPS 如果請求穿過安全通道(SSL),則返回 ON。如果請求來自非安全通道,則返回 OFF。
HTTPS_KEYSIZE 安全套接字層連接關鍵字的位數,如 128。
HTTPS_SECRETKEYSIZE 服務器驗證私人關鍵字的位數。如 1024。
HTTPS_SERVER_ISSUER 服務器驗證的頒發者字段。
HTTPS_SERVER_SUBJECT 服務器驗證的主字段。
INSTANCE_ID 文本格式 IIS 實例的 ID。如果實例 ID 爲 1,則以字符形式出現。使用該變量可以檢索請求所屬的(元數據庫中)Web 服務器實例的 ID。
INSTANCE_META_PATH 響應請求的 IIS 實例的元數據庫路徑。
LOCAL_ADDR 返回接受請求的服務器地址。如果在綁定多個 IP 地址的多宿主機器上查找請求所使用的地址時,這條變量非常重要。
LOGON_USER 用戶登錄 Windows NT® 的帳號。
PATH_INFO 客戶端提供的額外路徑信息。可以使用這些虛擬路徑和 PATH_INFO 服務器變量訪問腳本。如果該信息來自 URL,在到達 CGI 腳本前就已經由服務器解碼了。
PATH_TRANSLATED PATH_INFO 轉換後的版本,該變量獲取路徑並進行必要的由虛擬至物理的映射。
QUERY_STRING 查詢 HTTP 請求中問號(?)後的信息。
REMOTE_ADDR 發出請求的遠程主機的 IP 地址。
REMOTE_HOST 發出請求的主機名稱。如果服務器無此信息,它將設置爲空的 MOTE_ADDR 變量。
REMOTE_USER 用戶發送的未映射的用戶名字符串。該名稱是用戶實際發送的名稱,與服務器上驗證過濾器修改過後的名稱相對。
REQUEST_METHOD 該方法用於提出請求。相當於用於 HTTP 的 GET、HEAD、POST 等等。
SCRIPT_NAME 執行腳本的虛擬路徑。用於自引用的 URL。
SERVER_NAME 出現在自引用 UAL 中的服務器主機名、DNS 化名或 IP 地址。
SERVER_PORT 發送請求的端口號。
SERVER_PORT_SECURE 包含 0 或 1 的字符串。如果安全端口處理了請求,則爲 1,否則爲 0。
SERVER_PROTOCOL 請求信息協議的名稱和修訂。格式爲 protocol/revision
SERVER_SOFTWARE 應答請求並運行網關的服務器軟件的名稱和版本。格式爲 name/version
URL 提供 URL 的基本部分。

註釋

如果客戶端發送的標題文件在上述表格中找不到,可以在調用 Request.ServerVariables 中給標題文件名加上 HTTP_ 的前綴以檢索其值。例如,如果客戶端發送標題文件

SomeNewHeader:SomeNewValue
 

您可以通過使用下面的語法檢索 SomeNewValue

<% Request.ServerVariables("HTTP_SomeNewHeader") %>
 

您可使用重述符以循環遍歷所有的服務器變量名。例如,使用下面的腳本打印出所有的服務器名。

<TABLE>
<TR><TD><B>Server Variable</B></TD><TD><B>Value</B></TD></TR>
<% For Each name In Request.ServerVariables %> 
<TR><TD> <%= name %> </TD><TD>   <%= Request.ServerVariables(name) %> </TD></TR>
</TABLE>
<% Next %> 
 

示例

下面的例子使用 Request 對象顯示一些服務器變量。

<HTML>
<!-- This example displays the content of several ServerVariables. --> 
ALL_HTTP server variable = 
<%= Request.ServerVariables("ALL_HTTP") %> <BR>
CONTENT_LENGTH server variable = 
<%= Request.ServerVariables("CONTENT_LENGTH") %> <BR> 
CONTENT_TYPE server variable = 
<%= Request.ServerVariables("CONTENT_TYPE") %> <BR>
QUERY_STRING server variable = 
<%= Request.ServerVariables("QUERY_STRING") %> <BR> 
SERVER_SOFTWARE server variable = 
<%= Request.ServerVariables("SERVER_SOFTWARE") %> <BR> 
</HTML>
 

下一個示例使用 ServerVariables 集合將服務器名插入一個超文本鏈接。

<A HREF = "http://<%= Request.ServerVariables("SERVER_NAME") %>
/scripts/MyPage.asp">Link to MyPage.asp</A>
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章