بسم الله الرحمن الرحيم

Настройка сервера для исполнения SSI

Директивы Options +Includes и XBitHack on|full в файлах httpd.conf и .htaccess

Чтобы исполнять SSI на сервере, необходимо установить и включить mod_include. Необходима также следующая директива либо в файле httpd.conf, или в файле .htaccess:

Options +Includes

Это сообщение для Apache, что нужен анализ файлов на предмет директив SSI. Многие конфигурации содержат несколько директив Options, которые могут переопределять друг друга. Можно применить директиву Options к конкретному каталогу, для включения SSI, т.к. это будет оцениваться последним.

Следует указать Apache, какие файлы следует анализировать на предмет наличия директив SSI. Есть два способа сделать это.

Первый способ: Указать Apache проанализировать любой файл с определенным расширением, например .shtml, посредством следующих директив:

AddType text/html .shtml
AddHandler server-parsed .shtml

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

Второй способ: использовать XBitHack директиву:

XBitHack on

XBitHack сообщает Apache о необходимости синтаксического анализа файлов на наличие директив SSI, если в них установлен бит выполнения. Итак, чтобы добавить директивы SSI на существующую страницу, вместо того, чтобы изменять имя файла, вам просто нужно сделать файл исполняемым, используя chmod.

chmod +x pagename.html

Кратко о том, чего не следует делать: Иногда вы увидите, что кто-то рекомендует просто сказать Apache, чтобы он проанализировал все .html файлы для SSI, чтобы вам не пришлось связываться с .shtml именами файлов. Эти люди, возможно, не слышали об этом XBitHack. Следует иметь в виду, что, делая это, вы требуете, чтобы Apache прочитал каждый файл, который он отправляет клиентам, даже если они не содержат никаких директив SSI. Это может немного замедлить работу, и это не очень хорошо.

В ОС Windows у файлов нет бита выполнения и это ограничивает возможности.

Обычно в конфигурации по умолчанию Apache не отправляет HTTP-заголовки даты последнего изменения или длины содержимого на страницах с включённым SSI, поскольку эти значения трудно вычислить для динамического содержимого. Это может предотвратить кэширование вашего документа и снизить воспринимаемую производительность клиента. Есть два способа изменить это:

1. Используйте XBitHack Full конфигурацию. Это указывает Apache определять дату последнего изменения на основе даты изначально запрошенного файла, игнорируя дату изменения включенных файлов:

XBitHack full

Директивы XBitHack управляют синтаксическим анализом обычных html-документов. Эта директива влияет только на файлы, связанные с MIME-типом text/html.

2. Используйте директивы, предоставляемые mod_expires, чтобы установить явное время истечения срока действия ваших файлов, тем самым позволяя браузерам и прокси-серверам знать, что их можно кэшировать.

Ссылка на источник информации: Configuring your server to permit SSI

والحمد لله رب العالمين

Copyright © 2021 NetBeans.ru

Правила фантастического портала