Относительные корневые пути не работают на виртуальном хосте XAMPP - PullRequest
1 голос
/ 29 мая 2019

Я хочу иметь возможность использовать корневые относительные пути (например, /incl/file.php) при разработке веб-сайта на локальном хосте XAMPP, чтобы он работал таким же образом, когда я загружаю его на веб-сервер. Для этого я установил виртуальный хост в XAMPP. Виртуальный хост работает нормально, когда я обращаюсь к нему с абсолютными путями (например, C: /xampp/htdocs/incl/file.php) или pahts без косой черты (incl / file.php), но с корневыми относительными путями (/ incl /file.php) вообще не работает.

Я перепробовал множество различных конфигураций виртуальных хостов, которые я нашел здесь и на многих веб-сайтах, и удалил и установил XAMPP. Я также пытался использовать «\» вместо «/», но результат тот же. У меня установлена ​​Windows 10 Pro с последней версией XAMPP.

Это виртуальный хост, который я сейчас использую.

В файле hosts:

# localhost name resolution is handled within DNS itself.
    127.0.0.1       localhost
#   ::1             localhost
    127.0.0.1       atriero.localhost

В файле httpf-vhosts.conf:

<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs"
    ServerName localhost
    <Directory  "C:/xampp/htdocs">
       Require all granted
    </Directory>
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot "C:/xampp/subdomains/site"
    ServerName atriero.localhost
    <Directory  "C:/xampp/subdomains/site">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

В качестве примера корневых относительных путей, которые не работают, на моей странице указателя у меня есть

require "/header.php";

, который находится в папке «site», там же, где и index.php. Если я наберу "header.php" без косой черты, он будет работать нормально.

На странице header.php также есть следующая строка

include_once '/includes/dbh.inc.php';

, где возникает такая же проблема, dbh.inc.php находится в папке include в папке сайта. Если я уберу косую черту, ссылка будет работать нормально, но в том виде, в котором она написана, с root -lative-path, она не будет работать.

Я ожидаю, что с помощью Virtual Host в XAMPP можно запускать корневые относительные пути, я предполагаю, что это действительно поможет в разработке моего веб-сайта, и, насколько я знаю, это будет наилучшим способом сделать это.

Если по какой-либо причине невозможно использовать корневые относительные пути с виртуальным хостом, и если мне придется загружать свой веб-сайт на сервер без "\" перед каждым путем, будет ли это вредно для работа моего сайта?

Заранее спасибо.

...