首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> ASP.NET 基礎

ASP.NET Request.ServerVariables 完整參考手冊

     編輯:ASP.NET 基礎

常用伺服器變數速查表

變數名稱說明範例值
HTTP_X_FORWARDED_FOR透過代理/閘道時的真實客戶端 IP(需代理支援)203.0.113.45
REMOTE_ADDR直接發出請求的遠端主機 IP192.168.1.100
REMOTE_HOST遠端主機名稱(若 DNS 反查失敗則同 REMOTE_ADDR)client.example.com
LOCAL_ADDR接收請求的伺服器本地 IP10.0.0.5
HTTP_HOST請求標頭 Host 值(含連接埠)www.example.com:8080
SERVER_NAME伺服器主機名、DNS 或 IPwww.example.com
REQUEST_METHODHTTP 方法GET、POST、HEAD
SERVER_PORT伺服器接收請求的連接埠80、443
SERVER_PORT_SECURE是否為安全連接埠 (HTTPS)1 (是) / 0 (否)
SERVER_PROTOCOL協議名稱與版本HTTP/1.1
SERVER_SOFTWARE伺服器軟體名稱版本Microsoft-IIS/10.0
QUERY_STRING查詢字串(? 之後)id=123&name=abc
SCRIPT_NAME執行腳本的虛擬路徑/app/page.aspx
PATH_INFO客戶端提供的額外路徑資訊/extra/path
PATH_TRANSLATEDPATH_INFO 對應的實體路徑C:\inetpub\app\extra\path
APPL_PHYSICAL_PATH應用程式實體路徑C:\inetpub\app\
HTTP_REFERER來源頁面 URLhttps://google.com/search?q=test
HTTP_USER_AGENT瀏覽器用戶代理字串Mozilla/5.0 (Windows NT 10.0; Win64; x64)...
HTTP_COOKIE客戶端送出的所有 CookieASP.NET_SessionId=xxx; lang=zh-TW
HTTP_ACCEPT_LANGUAGE瀏覽器偏好語言zh-TW,zh;q=0.9,en;q=0.8
HTTP_ACCEPT_ENCODING支援的內容編碼gzip, deflate, br
HTTPS是否透過 SSLON / OFF
HTTPS_KEYSIZESSL 連線金鑰長度128
HTTPS_SECRETKEYSIZE伺服器憑證私鑰長度2048
AUTH_USER通過驗證的使用者名稱DOMAIN\user
AUTH_TYPE驗證類型Basic、Negotiate、NTLM
CONTENT_TYPE請求內容類型application/x-www-form-urlencoded
CONTENT_LENGTH請求內容長度(位元組)1024
ALL_HTTP所有 HTTP 標頭(前綴 HTTP_)HTTP_ACCEPT=...&HTTP_HOST=...
ALL_RAW原始 HTTP 標頭(無前綴)Accept: ...\r\nHost: ...

實用範例:取得客戶端真實 IP

public string GetClientIP()
{
    string ip = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    if (string.IsNullOrEmpty(ip))
        ip = Request.ServerVariables["REMOTE_ADDR"];
    return ip;
}

隱藏的系統環境變數

部分伺服器變數實為進程環境變數:

  • NUMBER_OF_PROCESSORS、OS、WINDIR、TEMP、TMP、ComSpec、PROCESSOR_ARCHITECTURE、PROCESSOR_IDENTIFIER、PROCESSOR_LEVEL、PROCESSOR_REVISION、PATH、PATHEXT 等。

可在頁面直接輸出:<%= Request.ServerVariables("OS") %>。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved