如何在 PHP 中擷取引用網址
追蹤網站上的使用者行為時,通常希望知道他們來自哪裡。 PHP 提供了一種透過 $_SERVER['HTTP_REFERER'] 變數存取引用網址的便利方法。
但是,需要注意的是,該變數可能不會總是包含預期值。例如,如果使用者透過輸入 URL 或使用書籤直接造訪您的網站,則 $_SERVER['HTTP_REFERER'] 將為空。
其他注意事項
如果您使用$_SERVER['HTTP_REFERER'] 變數並發現它總是空,請考慮以下可能性:
- 使用者可能已停用在其郵件中傳送引薦來源網址資訊的選項瀏覽器設定。
- 使用者可能使用了腳本或機器人來造訪您的網站,而網站通常不提供引薦來源網址資訊。
- 您可能不小心省略了 $_SERVER[' 中的前導下劃線HTTP_REFERER'].
以下是 $_SERVER 數組中包含的變數的更全面列表:
- DOCUMENT_ROOT:網路伺服器的根資料夾。
- GATEWAY_INTERFACE:CGI 的版本。
- HTTP_ACCEPT:客戶端可以接受的內容類型。
- HTTP_ACCEPT_ENCODING:客戶端可接受的編碼。
- HTTP_ACCEPT_LANGUAGE:客戶端可接受的語言。
- HTTP_CACHE_CONTROL:控制頁面的快取。
- HTTP_CONNECTION:用於存取頁面的連線類型。
- HTTP_COOKIE:客戶端發送的 cookie。
- HTTP_HOST:伺服器的主機名稱。
- HTTP_USER_AGENT:使用者
- PATH:腳本的搜尋路徑。
- QUERY_STRING:傳送到腳本的查詢字串。
- REDIRECT_STATUS:執行重定向的狀態代碼
- REMOTE_ADDR:客戶端的 IP 位址。
- REMOTE_PORT:客戶端使用的連接埠號碼。
- REQUEST_METHOD:造訪頁面的方法(GET、POST 等)。
- REQUEST_URI:請求頁面的路徑和查詢字串。
- SCRIPT_FILENAME:正在執行的腳本的絕對路徑。
- SCRIPT_NAME:正在執行的腳本的路徑。
- SERVER_ADDR:伺服器的 IP 位址。
- SERVER_ADMIN:伺服器管理員的電子郵件地址。
- SERVER_NAME:伺服器的主機名稱。
- SERVER_PORT:伺服器使用的連接埠號碼。
- SERVER_PROTOCOL:伺服器所使用的協定(HTTP/1.1、HTTP/1.0)。
- SERVER_SIGNATURE:伺服器的簽章(Apache、IIS 等)。
- SERVER_SOFTWARE:伺服器所使用的軟體(Apache、IIS 等)。
- UNIQUE_ID:唯一的會話識別碼。
- PHP_SELF:目前腳本的名稱。
- REQUEST_TIME:發出請求時的時間戳記。
- argv:命令列參數數組。
- argc:命令列參數的數量。
以上是如何在 PHP 中檢索引用 URL:為什麼 $_SERVER[\'HTTP_REFERER\'] 有時為空?的詳細內容。更多資訊請關注PHP中文網其他相關文章!