2.23.11. OpenLiteSpeed
Описание
LiteSpeed — веб-сервер, разработанный компанией LiteSpeed Technologies, который является альтернативой веб-серверу Apache и совместим с наиболее распространёнными его возможностями вроде .htaccess и mod_rewrite
. В первую очередь LiteSpeed интересен тем, что позволяет ускорить работу сайтов за счёт использования специализированных плагинов для различных CMS. Эти плагины обеспечивают интеграцию с кешем LiteSpeed Cache (LSCache).
Существует в двух вариантах — версия с открытым исходным кодом OpenLiteSpeed и платная версия LiteSpeed Enterprise. На хостинге используется первый вариант — OpenLiteSpeed, который имеет ряд отличий от платной версии:
- Не отслеживаются изменения файла .htaccess — внесённые в него изменения начинают работать не мгновенно, а с некоторой задержкой.
- Нет поддержки ESI — из-за этого плагины для интеграции с LSCache будут работать не во всех CMS (например, их не получится запустить в PrestaShop и Magento — плагины для этих CMS требуют обязательного наличия поддержки ESI).
Особенности работы
Веб-сервер LiteSpeed имеет определённые особенности работы и отличается от веб-сервера Apache. Именно поэтому он не поддерживает некоторые возможности Apache, от которых придётся отказаться, чтобы его использовать.
Особенности:
- Можно использовать версию PHP не ниже 5.4.
- Существует ряд существенных нюансов при работе с файлом .htaccess.
- Невозможно запускать скрипты:
- Python.
- Perl.
- CGI.
- Не поддерживается автоматический модуль фильтрации запросов
mod_security
. - Не поддерживается модуль
LiteMage
. - Не поддерживается симлинки (символьные ссылки на другие файлы или каталоги). При попытке открыть такую ссылку будет возвращён код 403.
.htaccess
- Правила, указанные в файле .htaccess, активируются при первом запросе к сайту и затем обновляются раз в 5 минут (каждые 300 секунд). Из-за этого изменения в директивах начинают действовать не сразу и нужно ожидать их применения.
- Из директив .htaccess работают только директивы
Rewrite
(кромеRewriteBase
) и директиваOption +SymLinksIfOwnerMatch
. Все остальные директивы будут игнорироваться. - Чтобы все директивы
Rewrite
корректно обрабатывались веб-сервером LiteSpeed, требуется их изменение в соответствии с инструкцией. Например, правило для Apache, которое выглядит так:RewriteRule ^example/(.*)$ another/example/$1 [L]
В рамках LiteSpeed должно выглядеть так:
RewriteRule ^/?example/(.*)$ another/example/$1 [L]
В отличие от Apache, в LiteSpeed правила должны чётко указывать на определённый каталог, откуда или куда будет производиться редирект. В начале каталогов или имён файлов нужно устанавливать
/
, чтобы задать начальную корневую позицию. - Для настройки директив, которые будут использоваться только веб-сервером LiteSpeed, можно использовать обёртку
IfModule
. Пример:<IfModule LiteSpeed> RewriteCond %{REQUEST_URI} ^/example/$ RewriteRule ^.*$ http://%{HTTP_HOST}/another/example/ [R=301,L] <IfModule>
Активация
- Ознакомьтесь с особенностями работы LiteSpeed и убедитесь, что ваш сайт их учитывает.
- Откройте настройки сайта.
- Подождите примерно 10-15 минут, пока изменения вступят в силу.