首页 >后端开发 >php教程 >如何在 PHP 中获取完整的、浏览器显示的 URL、考虑 .htaccess 和安全性?

如何在 PHP 中获取完整的、浏览器显示的 URL、考虑 .htaccess 和安全性?

Linda Hamilton
Linda Hamilton原创
2024-12-24 21:24:51979浏览

How Can I Get the Complete, Browser-Displayed URL in PHP, Accounting for .htaccess and Security?

在 PHP 中获取完整 URL

尝试使用代码片段 $actual_link = 'http://' 检索完整 URL 时.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];,由于 .htaccess 而面临限制掩蔽。返回的 URL 可能无法准确反映浏览器导航栏中显示的 URL。

要获取浏览器中显示的确切 URL,请使用 $_SERVER['REQUEST_URI'] 变量。以下代码说明了其用法:

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

为了在 HTTP 和 HTTPS 协议之间实现灵活性,请使用以下代码:

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

安全注意事项

需要注意的是,此代码具有安全隐患。客户端和服务器可以将 HTTP_HOST 和 REQUEST_URI 修改为任意值。充分的清理和输入验证对于防止这些值在安全上下文中被利用至关重要 (CWE-20)。

以上是如何在 PHP 中获取完整的、浏览器显示的 URL、考虑 .htaccess 和安全性?的详细内容。更多信息请关注PHP中文网其他相关文章!

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