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

PHP $_SERVER 變數完整參考手冊:常用伺服器與請求資訊一覽

     編輯:PHP 相關知識

$_SERVER 超全域變數簡介

`$_SERVER` 是 PHP 內建陣列,包含 HTTP 標頭、腳本路徑、伺服器環境等資訊,由 Web 伺服器建立。以下整理開發最常用的鍵值與說明:

核心變數對照表

鍵名說明範例
PHP_SELF當前執行腳本路徑(相對 Document Root)/index.php
argv傳遞給腳本的參數(CLI 模式)array('arg1', 'arg2')
argc命令列參數個數2
GATEWAY_INTERFACECGI 規範版本CGI/1.1
SERVER_NAME伺服器主機名稱example.com
SERVER_SOFTWARE伺服器識別字串Apache/2.4.41
SERVER_PROTOCOL請求協議名稱與版本HTTP/1.1
REQUEST_METHOD請求方法GET, POST, PUT
QUERY_STRING查詢字串(? 後內容)id=123&name=test
DOCUMENT_ROOT腳本所在文件根目錄/var/www/html
HTTP_ACCEPTAccept 標頭text/html,application/xhtml+xml
HTTP_ACCEPT_CHARSETAccept-Charset 標頭utf-8, iso-8859-1
HTTP_ACCEPT_ENCODINGAccept-Encoding 標頭gzip, deflate
HTTP_ACCEPT_LANGUAGEAccept-Language 標頭zh-TW,zh;q=0.9,en;q=0.8
HTTP_CONNECTIONConnection 標頭Keep-Alive
HTTP_HOSTHost 標頭example.com:8080
HTTP_REFERER來源頁面 URL(不可完全信賴)https://google.com/search?q=php
HTTP_USER_AGENTUser-Agent 標頭Mozilla/5.0 ...
HTTPSHTTPS 請求時為非空值(通常為 on)on
REMOTE_ADDR用戶端 IP 位址203.0.113.45
REMOTE_HOST用戶端主機名(需啟用 DNS 反查)user.isp.com
REMOTE_PORT用戶端連接埠54321
SCRIPT_FILENAME當前腳本絕對路徑/var/www/html/index.php
SERVER_ADMIN伺服器管理員 Emailadmin@example.com
SERVER_PORT伺服器監聽埠80, 443
SERVER_SIGNATURE伺服器版本與虛擬主機名字串Apache/2.4.41 (Ubuntu) Server at example.com Port 80
PATH_TRANSLATED腳本在檔案系統的基礎路徑(非 Document Root)/var/www/html/index.php
SCRIPT_NAME當前腳本路徑(含前導 /)/index.php
REQUEST_URI請求 URI(含查詢字串)/index.php?id=123
PHP_AUTH_USERHTTP 認證用戶名(Apache 模組模式)username
PHP_AUTH_PWHTTP 認證密碼(Apache 模組模式)password

實務提醒

  • 不可信任用戶端可控變數:`HTTP_REFERER`、`HTTP_USER_AGENT`、`HTTP_X_FORWARDED_FOR` 等易偽造,安全敏感邏輯勿直接依賴。
  • 取得真實 IP:代理環境下優先檢查 `HTTP_CLIENT_IP`、`HTTP_X_FORWARDED_FOR`,最後才用 `REMOTE_ADDR`。
  • CLI 模式差異:命令列執行時缺少 HTTP 相關鍵值,`argc`/`argv` 可用。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved