Вопрос

Есть ли способ, которым я могу включить включаемые файлы внутри включаемых файлов?(Повторите это пять раз быстро!)

Например:

Внутри index.html:

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

Внутри включение1.shtml:

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

Итак, дерево выглядит вот так: index.html <-- включение_1.shtml <-- включение_2.shtml

Как есть, это не работает на моем Apache.Первое включение работает нормально, но содержимое для вложенного включения не отображается.

Поскольку это актуально, я использую XBitHack на Apache 2, и я дважды проверил, что оба файла являются исполняемыми веб-пользователем.

Помочь?

Это было полезно?

Решение

Убедитесь, что Apache действительно пытается обработать файлы *.shtml.Попробуйте положить

<!--#echo var="DATE_LOCAL" -->

в файле *.shtml и посмотрите, получите ли вы ожидаемые результаты.Получаете ли вы тот же результат в файле *.html?Если вы не видите даты в обоих, ваша конфигурация отключена.

Другие советы

Я знаю, что этому вопросу более четырех лет, но в интересах людей, которые, как и я, находят его благодаря StackOverflow Удивительные сок поисковой системы, вот как я заставил это работать.

В разделе Apache2, тебе нужно знать это.

Соответствующий текст:

Эта команда вставляет текст включенного файла в анализируемый файл.Файлы SSI могут быть вложенными, то есть включенный файл может содержать дополнительные инструкции SSI (но в этом случае должен быть суффикс .shtml независимо от настройки XBitHack).

(Курсив мой) Для меня решение заключалось в раскомментировании двух строк по умолчанию httpd.conf:

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

... и изменение расширения имени файла включаемого файла первого уровня на .shtml:

index.html
  └─┬─ include1.shtml
    └─── include2.html

Бум!Вложенный SSI работает как настоящий чемпион.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top