2015-11-03 3 views
1

Мой сайт настроен на использование SSI, и он отлично работает.SSI включает виртуальный относительный путь не работает

Однако, когда я пытаюсь включить файл через SSI, это не сработает, поскольку я использую относительный путь. Например, следующие работы

<html> 
    <head> 
     <!--#include virtual="include/head.shtml" --> 
    </head> 
</html> 

Но это не (предположим, что файлы существуют)

<html> 
    <head> 
     <!--#include virtual="../include/head.shtml" --> 
    </head> 
</html> 

Есть ли что-то я не хватает, или есть способ, которым я могу получить более подробную информацию о эта ошибка.

ответ

2

По Apache Tutorial:

include элемент может определить, какой файл включить либо с file атрибута или атрибута virtual. Атрибутом file является файл path, относительно текущего каталога. Это означает, что не может быть абсолютный путь к файлу (начиная с /), и он не может содержать ../ как часть этого пути. Атрибут virtual, вероятно, более полезен, и должен указывать URL-адрес относительно обслуживаемого документа. Он может начать с /, но должен находиться на том же сервере, что и файл .

По Wikipedia:

«virtual» указывает целевую относительно корня домена, в то время как «file» указывает путь относительно каталога текущего файла.

+0

Я получаю эту ошибку. То, что меня смущает, это .../assets/reference_editable_forms/js path. этот файл не существует. [Tue Dec 29 13:28:14 2015] [error] [client :: 1] не удалось включить файл «../../include/head.shtml» в анализируемом файле/Приложения/MAMP/htdocs/TO /assets/reference_editable_forms/current_employed.html [Вт Дек 29 13:28:14 2015] [error] [client :: 1] Файл не существует:/Applications/MAMP/htdocs/TO/assets/reference_editable_forms/js, referar: http: // localhost: 9988/TO/assets/reference_editable_forms/current_employed.html? objectId = LAytov5IZr & request_email = myemail% 40gmail.com ... –

+0

Полный путь к «head.shtml» - «/ Applications/MAMP/htdocs /TO/include/head.shtml "? – Valentin

+0

Да. На этой машине все равно. –

0

Server Side Включает обрабатываются только при загрузке файла с веб-сервера, то есть при просмотре веб-страниц в браузере, призывающих их из URL (например, HTTP: // ....) , При просмотре своих веб-страниц на рабочем столе вы не увидите включений.

Шрифт:

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