Установка и настройка OpenLiteSpeed с PHP 7 на CentOS 7
О чём эта инструкция
Это подробное пошаговое руководство для системных администраторов и разработчиков, которые хотят развернуть OpenLiteSpeed и PHP 7 (lsphp70) на сервере CentOS 7. Документ охватывает установку, конфигурацию через WebAdmin, тестирование, типовые проблемы и рекомендации по безопасности.
Важно: инструкция ориентирована на OpenLiteSpeed 1.4 и lsphp70 (имя пакета может начинаться с «lsphp»). Все команды и пути приведены в контексте CentOS 7 и пакетов, доступных через репозитории LiteSpeed и EPEL.
Предварительные требования
- CentOS 7 — 64‑бит. 32‑бит не тестировалось.
- Доступ root или эквивалентные привилегии sudo.
- Доступ к интернету для загрузки RPM-пакетов.
1. Добавление репозитория OpenLiteSpeed
Добавьте репозиторий LiteSpeed и установите его RPM:
rpm -ivh http://rpms.litespeedtech.com/centos/litespeed-repo-1.1-1.el7.noarch.rpmПримечание: если у вас уже есть локальный mirror или корпоративный репозиторий — можно добавить туда этот пакет вручную.
2. Установка OpenLiteSpeed
Установим стабильную ветку 1.4:
yum -y install openlitespeed14.x86_64Дождитесь завершения установки. Пакет добавит файлы в /usr/local/lsws и веб-интерфейс WebAdmin по умолчанию на порту 7080.
3. Установка EPEL и PHP 7 (lsphp70)
EPEL нужен для дополнительных зависимостей. Установите его так:
yum -y install epel-releaseДалее установите lsphp70 и распространённые расширения (набор можно изменить под ваши приложения):
yum -y install lsphp70 lsphp70-mysqlnd lsphp70-process lsphp70-mbstring lsphp70-mcrypt lsphp70-gd lsphp70-opcache lsphp70-bcmath lsphp70-pdo lsphp70-common lsphp70-xmlЧтобы просмотреть доступные расширения для lsphp70:
yum search lsphp70Важно: пакеты OpenLiteSpeed используют префикс lsphp — это отдельная сборка PHP, оптимизированная для LSAPI.
4. Конфигурация OpenLiteSpeed и PHP 7
В этом разделе мы настроим WebAdmin, добавим «внешнее приложение» lsphp70 и переключим обработчик PHP. Все операции удобнее выполнять через WebAdmin в браузере.
Настройка пароля WebAdmin
Запустите скрипт создания пароля администратора:
/usr/local/lsws/admin/misc/admpass.shВведите желаемое имя пользователя и пароль.

После этого откройте в браузере WebAdmin по адресу (пример):
https://192.168.1.108:7080/
Введите учётные данные и войдите в панель — вы попадёте на главную панель управления.

Добавление внешнего приложения lsphp70
По умолчанию в OpenLiteSpeed может быть настроен lsphp5. Нам нужно добавить новое внешнее приложение типа «LiteSpeed SAPI App» с именем lsphp70.
В WebAdmin откройте «Server Configuration» → вкладка «External App». Нажмите «Add» и в качестве типа выберите «LiteSpeed SAPI App», затем заполните поля следующим образом:
Name: lsphp70
Address: uds://tmp/lshttpd/lsphp.sock
Max Connections: 35
Environment: PHP_LSAPI_MAX_REQUESTS=500
PHP_LSAPI_CHILDREN=35
Initial Request Timeout (secs): 60
Retry Timeout: 0
Response Buffering: no
Auto Start: yes
Command: $SERVER_ROOT/lsphp70/bin/lsphp
Back Log: 100
Instances: 1
Memory Soft Limit (bytes): 2047M
Memory Hard Limit (bytes): 2047M
Process Soft Limit: 400
Process Hard Limit: 500Сохраните изменения.

Переключение обработчика PHP на lsphp70
Перейдите в «Script Handler», отредактируйте существующий обработчик для php и установите:
Suffixes: php
Handler Type: LiteSpeed SAPI
Handler Name: lsphp70Сохраните изменения и примените конфигурацию.

Перенастройка слушателя на порт 80
По умолчанию OpenLiteSpeed слушает порт 8080. Чтобы обслуживать запросы по стандартному HTTP, поменяйте слушатель:
В разделе «Listeners» найдите слушатель на 8080, нажмите «view» → «Edit» и измените порт на 80. Сохраните.
IP Address: ANY
Port: 80
После правок перезапустите OpenLiteSpeed через WebAdmin или командой контроллера:
/usr/local/lsws/bin/lswsctrl restartЕсли команда lswsctrl недоступна в вашей сборке, используйте WebAdmin для перезапуска.
5. Тестирование
Проверьте доступность сайта по HTTP:
http://192.168.1.108/
Проверьте PHP через phpinfo; создайте файл phpinfo.php в корне сайта с содержимым:
Откройте:
http://192.168.1.108/phpinfo.phpВ phpinfo должна отображаться сборка lsphp70 и соответствующие расширения.

Если всё работает, тесты пройдены.
6. Изменение порта администратора WebAdmin (рекомендуется)
Важно: по умолчанию WebAdmin доступен на стандартном порту 7080. Из соображений безопасности рекомендуется изменить порт и/или ограничить доступ по IP.
В WebAdmin откройте «WebAdmin Settings» → «Listeners», отредактируйте порт администратора, сохраните и перезагрузите OpenLiteSpeed.


После смены порта проверьте доступ, например:
http://192.168.1.108:8088/Проверки и контрольные точки (минимальный набор)
- Доступ к WebAdmin: https://IP:7080 (или ваш новый порт).
- Сайт доступен по http://IP/ на порту 80.
- phpinfo() показывает lsphp70.
- Логи ошибок OpenLiteSpeed пусты или содержат только ожидаемые записи: /usr/local/lsws/logs/
Рекомендации по безопасности (базовый набор)
- Измените порт WebAdmin и/или ограничьте доступ по IP (в WebAdmin в настройках слушателя — Allowed List).
- Закройте лишние порты на фаерволе (firewalld):
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-port=7080/tcp (если нужен WebAdmin)
firewall-cmd --reload- Ограничьте доступ к phpinfo.php и временным файлам на проде.
- Включите HTTPS/SSL для фронтэнда (рекомендуется ставить SSL перед OpenLiteSpeed или настроить его прямо в WebAdmin для виртуального хоста).
- Регулярно обновляйте пакеты безопасности и lsphp сборку.
Отладка и распространённые проблемы
- WebAdmin не запускается: проверьте, что нет конфликтов портов и что процесс OpenLiteSpeed запущен.
- PHP не обрабатывается: проверьте, что внешний app lsphp70 создан и обработчик «Script Handler» указывает на lsphp70.
- 502/504 при больших запросах: увеличьте таймауты и PHPLSAPI* переменные, следите за лимитами памяти и количеством процессов.
- Логи: /usr/local/lsws/logs/error.log и /usr/local/lsws/logs/access.log — первые источники информации.
Важно: не удаляйте системные логи — они помогают при расследовании проблем.
Альтернативные подходы и когда использовать их
- Nginx + php-fpm — хорош для привычных стеков LEMP и при наличии сложных правил переработки URL, при этом php-fpm даёт гибкую настройку процессов.
- Apache + mod_php — пригоден, если требуется совместимость со старым кодом, но уступает по производительности.
- LiteSpeed Enterprise — коммерческая версия с расширенными функциями и поддержкой, подходит для больших боевых сред.
Когда OpenLiteSpeed может не подойти:
- Если требуется tight интеграция с модулем Apache, специфичные .htaccess правила могут потребовать конверсии.
- Если требуются специфичные модули PHP, которых нет в сборке lsphp.
Проверочные тесты и критерии приёмки
- HTTP 200 на http://IP/ и HTTP 200 на phpinfo.php.
- В phpinfo() строка с именем интерпретатора должна содержать “lsphp” (или lsphp70).
- Запросы больших файлов проходят без ошибок и не вызывают исчерпания памяти.
- WebAdmin доступен только с разрешённых IP (если настроено).
Чек-листы по ролям
Администратор:
- Установил пакеты openlitespeed14 и lsphp70.
- Настроил WebAdmin и сменил пароль.
- Перенастроил порт на 80 и закрыл лишние порты в фаерволе.
Разработчик:
- Проверил phpinfo() и список расширений.
- Убедился, что приложение работает под lsphp70 и не генерирует фатальных ошибок.
Инженер по безопасности:
- Ограничил доступ к WebAdmin по IP.
- Настроил HTTPS и проверил сертификаты.
- Провёл аудит прав доступа к файловой системе сайта.
Мини‑методология развертывания (быстро)
- Подготовить чистый CentOS 7 и сделать snapshot/резервную копию.
- Установить репозитории и пакеты (openlitespeed, epel, lsphp70).
- Настроить WebAdmin и lsphp70 в тестовой среде.
- Прогнать тестовый набор (phpinfo, функциональные тесты приложения).
- Перенести в продакшен, ограничить WebAdmin и включить мониторинг.
Краткая галерея крайних случаев
- Ошибки типа «cannot connect to lsphp sock»: проверьте путь uds://tmp/lshttpd/lsphp.sock и права доступа к каталогу /tmp/lshttpd.
- Перегрузка при пиковых запросах: увеличьте Max Connections и настройте auto scaling/балансировщик.
Небольшой глоссарий (1‑строчники)
- lsphp: специализированная сборка PHP под LSAPI (используется OpenLiteSpeed).
- WebAdmin: веб‑интерфейс управления OpenLiteSpeed.
- Listener: «слушатель» порта в OpenLiteSpeed — точка входа для HTTP/HTTPS.
Заключение
OpenLiteSpeed в связке с lsphp70 — лёгкое и производительное решение для PHP‑приложений. Благодаря удобному WebAdmin большинство настроек можно выполнить через браузер, а гибкость внешних приложений даёт контроль над обработкой PHP. Следуйте чек‑листам и практикам безопасности, чтобы перевести установку в боевой режим.
Важно: если вы планируете использовать более новые ветки PHP (7.1, 7.2 и выше) — проверяйте доступные lsphp пакеты в репозитории и тестируйте совместимость приложения.
Приложение: полезные команды
# Установка репозитория
rpm -ivh http://rpms.litespeedtech.com/centos/litespeed-repo-1.1-1.el7.noarch.rpm
# Установка OpenLiteSpeed
yum -y install openlitespeed14.x86_64
# Установка EPEL
yum -y install epel-release
# Установка lsphp70 и расширений
yum -y install lsphp70 lsphp70-mysqlnd lsphp70-process lsphp70-mbstring lsphp70-mcrypt lsphp70-gd lsphp70-opcache lsphp70-bcmath lsphp70-pdo lsphp70-common lsphp70-xml
# Перезапуск OpenLiteSpeed (контроллер)
/usr/local/lsws/bin/lswsctrl restart
# Открыть HTTP через firewalld
firewall-cmd --permanent --add-service=http
firewall-cmd --reloadПохожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента