如何在PHP 中檢索完整URL,包括掩碼修改
創建動態網站時,訪問完整URL 至關重要用戶在網絡瀏覽器中看到的。然而,由於 .htaccess 中使用了 URL 掩碼,像 $_SERVER['PHP_SELF'] 這樣的傳統方法可能並不總是足夠。為了解決這個問題,$_SERVER['REQUEST_URI']提供了一個全面的解決方案。
使用$_SERVER['REQUEST_URI']
取得完整的URL出現在網址列中,請使用以下程式碼:
$actual_link = "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
此程式碼組合$_SERVER['HTTP_HOST'] 和$_SERVER['REQUEST_URI'],其中保存路徑和查詢字串。它有效地產生完整的 URL,包括 .htaccess 中應用的任何遮罩修改。
透過協議包含支援HTTP 和HTTPS
確保支援HTTP 和HTTPS 協議,修改代碼如下:
$actual_link = (empty($_SERVER['HTTPS']) ? 'http' : 'https') . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
此更新的程式碼檢查$_SERVER['HTTPS']值並根據其存在添加適當的協定。
安全注意事項
需要注意的是,這些技術可能會帶來安全風險,因為 HTTP_HOST 和 REQUEST_URI 可以被操縱客戶端或伺服器。在任何與安全相關的場景中使用這些值之前,正確的輸入驗證和清理至關重要。
以上是如何在 PHP 中取得完整的 URL,包括 .htaccess 修改?的詳細內容。更多資訊請關注PHP中文網其他相關文章!