如何获取当前正在执行的PHP脚本的URL?
例如,网址http://www.domain.com/folder/script.php
向/var/www/domain/folder/script.php
发送请求。
在script.php
中,我想回复http://www.domain.com/folder/
(不是/var/www/domain/folder/
,而不是http://www.domain.com/folder/script.php
)。最简单的方法是什么?
答案 0 :(得分:3)
简单的Google搜索会回答您的问题。这是结果。
答案 1 :(得分:2)
这不是那么复杂,但在这里:
<?php
$scriptFolder = (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on')) ? 'https://' : 'http://';
$scriptFolder .= $_SERVER['HTTP_HOST'] . dirname($_SERVER['REQUEST_URI']);
echo $scriptFolder;
?>
答案 2 :(得分:0)
我正在寻找这个问题的答案,似乎并不容易。
然后它击中了我:这是因为并不总是能够获得当前的脚本URL。
PHP可以在文件系统中的任何位置包含文件,只要运行该进程的用户可以访问它,它就可以工作。但是,这意味着可以在Web服务器的根目录之外包含脚本 - 因此无法获得URL。我相信这就是没有直接功能的原因。