首页 >后端开发 >php教程 >即使使用 .htaccess 掩码,如何在 PHP 中获取完整 URL?

即使使用 .htaccess 掩码,如何在 PHP 中获取完整 URL?

Linda Hamilton
Linda Hamilton原创
2024-12-21 00:02:08968浏览

How Can I Get the Full URL in PHP, Even with .htaccess Masks?

如何在 PHP 中获取完整 URL

为了确定网页或应用程序的完整 URL,PHP 提供了各种机制。一种常用的方法是利用 $_SERVER['HTTP_HOST'] 和 $_SERVER['PHP_SELF'] 的组合,如原始问题中提到的代码块中所示。

这种方法的警告出现当掩码在 .htaccess 文件中实现时。这些掩码可能会更改地址栏中显示的 URL,使其与服务器上文件的实际路径不同。要克服此问题并准确检索浏览器导航栏中显示的 URL,请考虑利用 $_SERVER['REQUEST_URI'] 变量。

$actual_link = "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

需要注意的是,完全支持双引号字符串在 PHP 中。要无缝处理 HTTP 和 HTTPS 协议,可以使用以下代码片段:

$actual_link = (empty($_SERVER['HTTPS']) ? 'http' : 'https') . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

安全注意事项:

请注意,清理和输入验证措施是在使用 $_SERVER['HTTP_HOST'] 和 $_SERVER['REQUEST_URI'] 时至关重要,因为它们有可能被恶意行为者操纵。必须防止为这些变量设置任意值,特别是在安全敏感的上下文中。

以上是即使使用 .htaccess 掩码,如何在 PHP 中获取完整 URL?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn