Получить webroot в PHP

Я использую сервер Apache для PHP . Как я могу получить свой корневой веб-сайт в PHP, например http://localhost/testthesis/ ?

Относительные пути

Для корневого каталога веб-серверов используйте:

 $folder = '/'; 

Для каталога извлеченного сценария используйте:

 $folder = './'; 

Абсолютные пути (с точки зрения клиента)

Для корневого каталога веб-серверов используйте:

 $protocol = $_SERVER['HTTPS'] == '' ? 'http://' : 'https://'; $folder = $protocol . $_SERVER['HTTP_HOST']; 

Для каталога извлеченного сценария используйте:

 $protocol = $_SERVER['HTTPS'] == '' ? 'http://' : 'https://'; $folder = $protocol . $_SERVER['HTTP_HOST'] . '/' . basename($_SERVER['REQUEST_URI']); 

Вот один из способов сделать это:

 $web_root = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/"; OUTPUT -->http://website.com/parent_folder/ 

Корневой сайт всегда просто / . Вам никогда не потребуется имя хоста или часть протокола, а root может быть только корневым сервером, а не какой-либо папкой или файлом.

Если вам нужен какой-то путь, например /testthesis/ – есть способы, но он не имеет ничего общего с веб- корнем .

Если вам нужен каталог файловой системы для webroot – он находится в переменной $_SERVER['DOCUMENT_ROOT'] .

То, что вы ищете, – это не веб-сайт, а URL.

Вы можете получить свой текущий URL-адрес следующим образом:

 $protocol = strpos($_SERVER['SERVER_SIGNATURE'], '443') !== false ? 'https://' : 'http://'; $url = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];