簡體   English   中英

如何獲取當前正在執行的PHP腳本的URL?

[英]How to get the URL of the currently executing PHP script?

如何獲取當前正在執行的PHP腳本的URL?

例如,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 ) 。 最簡單的方法是什么?

一個簡單的Google搜索就可以回答您的問題。 這是結果。

http://php.about.com/od/learnphp/qt/_SERVER_PHP.htm

它不是那么復雜,但是在這里:

<?php
    $scriptFolder = (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on')) ? 'https://' : 'http://';
    $scriptFolder .= $_SERVER['HTTP_HOST'] . dirname($_SERVER['REQUEST_URI']);
    echo $scriptFolder;
?>

我正在尋找這個問題的答案,似乎沒有一個簡單的答案。

然后它打到我了:這是因為並非總是能夠獲得當前的腳本URL。

PHP可以在文件系統中的任何位置包含文件,只要運行該進程的用戶有權訪問它,它將起作用。 但是,這意味着有可能在Web服務器的根目錄之外包含腳本-因此不可能有URL。 我認為這是沒有直接功能執行此操作的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM