2015-02-26 6 views
0

Я работаю над тем, чтобы сделать мое веб-приложение более портативным, но у меня возникли проблемы с созданием ссылок в корневом каталоге подкаталога.Не могу понять, почему корневая относительная ссылка не будет работать

/сайт - Предположим, что это мой каталог для веб-сайта.
/inc - Это мой каталог включает заголовок, нижний колонтитул и, в конечном итоге, конфигурационный файл .

Все, что находится в каталоге веб-сайта, отлично работает.

Я пытаюсь включить мой заголовок/нижний колонтитулы файлы в каталоге с квитанцией ..

include("/website/inc/header.php");

но я получаю ..

Внимание: включить (/ сайт/вкл /header.php): не удалось не удалось открыть поток: нет такого файла или каталога в F: \ XAMPP \ HTDOCS \ сайт \ расписка \ index.php на линии 8

предостерегающих g: include(): Не удалось открыть '/website/inc/header.php' для включение (include_path = '; F: \ xampp \ php \ PEAR') в F: \ xampp \ htdocs \ website \ receipt \ index.php on line 8

в моем браузере. Я попытался удалить / и даже добавить localhost и htdocs (это была просто отчаянная попытка заставить его работать). Что я делаю неправильно и как я могу это исправить?

ответ

0

Это потому, что путь к файлу, начинающийся с /, рассматривается как путь к файлу, начинающийся с корня файловой системы. У вас есть F:\ как корень, поэтому такой каталог не существует.

В вашем случае вы должны сделать что-то вроде ../../website/inc/header.php, но это зависит от местоположения папки, в которой работает ваш скрипт.

PHP (, но не HTML!) работает со всей файловой системой, а HTML работает только с домашним каталогом сайта.

Кстати, такие пути к файлам в Windows не допускаются, они доступны только в UNIX-подобных системах. Если такая конструкция работает на вашем сервере с , это странно, поскольку Windows имеет \ в качестве разделителя путей. Ваш код будет выглядеть как ..\..\website\inc\header.php. Обратите внимание, что вам может понадобиться избежать обратных косых черт, добавив другую обратную косую черту, подобную этой: \\

+0

PHP на Windows будет работать с «/» так же легко, как и с «\» –

+0

Когда вы говорите «корень файловой системы», это делает означает мой каталог 'htdocs' или' F: '? – Atonium

+0

@Atonium, пожалуйста, внимательно прочитайте, я упомянул, что F: // является корнем – ForceBru

Смежные вопросы