获取PHP中的完整URL

这个问题's的答案是社区的努力。编辑现有答案以改进此帖子。它目前不接受新的答案或互动。

我使用以下代码获取完整的URL:

$actual_link='http://'.$_SERVER['http_HOST'.$_SERVER['PHP_SELF'];

问题是我在.htaccess中使用了一些掩码,因此我们在URL中看到的并不总是文件的真实路径

我需要的是获取URL,URL中写的内容,不多也不少完整的URL

我需要了解它在web浏览器的导航栏中的显示方式,而不是服务器上文件的实际路径

看看$\u服务器['REQUEST\u URI'],即

$actual\u link="http://$\u服务器[http\u主机]$\u服务器[REQUEST\u URI]”;;

(请注意,双引号字符串语法完全正确)

如果您想同时支持HTTP和HTTPS,可以使用

实际链接=(isset($服务器['HTTPS'])和$服务器['HTTPS']==='on'?“HTTPS”:“http")&引用;://$_服务器[HTTP_主机]$“服务器[REQUEST_URI]”;;

编者按:使用此代码具有安全含义。客户端可以将HTTP_主机和请求_URI设置为它想要的任意值

发表评论