如何在 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中文网其他相关文章!