Установка сервера · 12 min read · Nov 24, 2025
Как установить и настроить сервер OpenLiteSpeed вместе с MariaDB и PHP на Ubuntu 20.04

OpenLiteSpeed — это легковесная и открытая версия сервера LiteSpeed, разработанная компанией LiteSpeed Technologies. Он поставляется с панелью управления на основе WebGUI, что отличает его от других серверов и упрощает управление.
В этом руководстве мы научимся устанавливать сервер OpenLiteSpeed на Ubuntu 20.04 вместе с PHP 7.4 и сервером MariaDB.
Предварительные требования
- Веб-сервер на базе Ubuntu 20.04.
- Учетная запись пользователя без прав root с привилегиями sudo.
Обновите вашу систему.
$ sudo apt update
$ sudo apt upgrade
Шаг 1 - Настройка брандмауэра
Перед тем как начать руководство, нам нужно настроить Uncomplicated Firewall(UFW), который обычно включен по умолчанию. Сначала проверим статус брандмауэра.
Нам нужно разрешить SSH, HTTP, HTTPS и порты 7080, 8088 для брандмауэра.
$ sudo ufw allow OpenSSH
$ sudo ufw allow http
$ sudo ufw allow https
$ sudo ufw allow 7080/tcp
$ sudo ufw allow 8088/tcp
Проверьте статус брандмауэра.
$ sudo ufw status
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
7080/tcp ALLOW Anywhere
8088/tcp ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
7080/tcp (v6) ALLOW Anywhere (v6)
8088/tcp (v6) ALLOW Anywhere (v6)
Если он не работает, то запустите брандмауэр.
$ sudo ufw enable
Шаг 2 - Установка OpenLiteSpeed
Существует несколько версий OpenLiteSpeed, которые вы можете установить. Рекомендуемые версии — из серии 1.6.x или 1.7.x на момент написания этого руководства.
Мы будем использовать официальный репозиторий OpenLiteSpeed для нашего руководства, который поддерживает только версию 1.6.x.
Добавьте ключ репозитория OpenLiteSpeed.
$ wget -qO - https://rpms.litespeedtech.com/debian/lst_repo.gpg | sudo apt-key add -
Добавьте репозиторий.
$ echo "deb http://rpms.litespeedtech.com/debian/ focal main" | sudo tee /etc/apt/sources.list.d/openlitespeed.list
Обновите репозиторий.
$ sudo apt update
Установите OpenLiteSpeed
$ sudo apt install openlitespeed
Проверьте статус сервера.
$ sudo /usr/local/lsws/bin/lswsctrl status
litespeed is running with PID 21825.
Если он не работает, вы можете запустить его с помощью следующей команды.
$ sudo /usr/local/lsws/bin/lswsctrl start
Откройте http://, чтобы получить доступ к вашему веб-серверу. Вы должны увидеть следующую страницу.

Шаг 3 - Установка PHP
Сервер OpenLiteSpeed поставляется с PHP 7.3, который включен по умолчанию. Но мы хотим использовать PHP 7.4, поэтому мы установим свою собственную копию.
Установите PHP 7.4 вместе с некоторыми дополнительными пакетами.
$ sudo apt install lsphp74 lsphp74-common lsphp74-mysql lsphp74-curl
Проверьте вашу установку PHP.
$ /usr/local/lsws/lsphp74/bin/php7.4 -v
PHP 7.4.5 (cli) (built: May 7 2020 23:08:38) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.5, Copyright (c), by Zend Technologies
Вы можете проверить включенные модули PHP.
$ /usr/local/lsws/lsphp74/bin/php7.4 --modules
Мы настроим PHP для работы с OpenLiteSpeed позже.
Шаг 4 - Установка MariaDB
Установите сервер MariaDB.
$ sudo apt install mariadb-server
Запустите и включите службу MariaDB.
$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb
Обеспечьте безопасность вашей установки MariaDB. Этот скрипт установит ваш пароль root, удалит анонимных пользователей, запретит удаленный вход root и удалит тестовые таблицы. Выберите надежный пароль и ответьте на вопросы, как описано ниже.
$ sudo mysql_secure_installation
[sudo] password for username:
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
После этого вы можете войти в оболочку MySQL, используя следующую команду.
$ sudo mysql -u root -p
Создайте тестовую базу данных и пользователя с правами доступа. Замените testdb и testuser на соответствующие имена для вашей настройки. Замените password на надежный пароль.
CREATE DATABASE testdb;
CREATE USER 'testuser' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser';
FLUSH PRIVILEGES;
Выйдите из оболочки MySQL.
exit
Шаг 5 - Настройка OpenLiteSpeed
Настройка панели администратора
Установите учетные данные панели администратора.
$ sudo /usr/local/lsws/admin/misc/admpass.sh
Please specify the user name of administrator.
This is the user name required to login the administration Web interface.
User name [admin]:
Please specify the administrator's password.
This is the password required to login the administration Web interface.
Password:
Retype password:
Administrator's username/password is updated successfully!
Вы также можете использовать эту команду, если забудете свои данные для входа.
Чтобы получить доступ к панели администратора, откройте http://.
При первом входе ваш браузер выдаст предупреждения о том, что ваше соединение не защищено. Нажмите «Дополнительно» и нажмите «Принять риск и продолжить» (в случае Firefox) или «Перейти к » (в случае браузера на основе Chromium). Вы больше не увидите это предупреждение.
Вас встретит следующий экран.

Вернуть HTTP порт обратно на 80
Давайте изменим порт HTTP по умолчанию на 80. Войдите в свою панель администратора по адресу http:// с учетными данными, которые вы только что создали.
Вас встретит следующий экран.

Перейдите в раздел Listeners слева. Вы увидите стандартные слушатели с портом 8080.

Нажмите кнопку «Просмотреть», чтобы увидеть детали конфигурации. На следующей странице в разделе Listener Default > General нажмите на значок «Редактировать» и измените порт с 8080 на 80.


Нажмите «Сохранить», а затем перезапустите сервер, нажав кнопку «Мягкая перезагрузка».
Шаг 6 - Настройка PHP
На этом шаге нам нужно связать нашу копию PHP 7.4 с сервером.
Нажмите на раздел Server Configuration слева, а затем на вкладку External App. Вы увидите существующее приложение LiteSpeed для PHP 7.3. Мы создадим наше собственное приложение LiteSpeed для PHP 7.4. Вы можете легко переключаться между ними позже, если захотите.

Нажмите кнопку «Добавить», чтобы создать новое приложение. Для типа выберите LiteSpeed SAPI App и нажмите «Далее».

Далее добавьте конфигурацию ниже. Оставьте все остальные поля пустыми.
Name: lsphp74
Address: uds://tmp/lshttpd/lsphp.sock
Max Connections: 35
Environment: PHP_LSAPI_MAX_REQUESTS=500
PHP_LSAPI_CHILDREN=35
LSAPI_AVOID_FORK=200M
Initial Request Timeout (secs): 60
Retry Timeout : 0
Persistent Connection: Yes
Response Buffering: no
Start By Server: Yes(Through CGI Daemon)
Command: lsphp74/bin/lsphp
Back Log: 100
Instances: 1
Priority: 0
Memory Soft Limit (bytes): 2047M
Memory Hard Limit (bytes): 2047M
Process Soft Limit: 1400
Process Hard Limit: 1500
Нажмите «Сохранить», когда закончите.

Теперь, когда мы создали наше собственное приложение на основе PHP 7.4, нам нужно сказать серверу, чтобы он начал его использовать.
Перейдите на вкладку Script Handler и отредактируйте обработчик lsphp. Переключите имя обработчика на lsphp74 из выпадающего меню.

Нажмите «Сохранить», а затем перезапустите сервер, нажав кнопку Мягкая перезагрузка.
Чтобы проверить, правильно ли переключен ваш PHP, посетите http:// в вашем браузере.

Шаг 7 - Настройка виртуального хоста
Сначала нам нужно создать каталоги для нашего виртуального хоста.
$ sudo mkdir /usr/local/lsws/example.com/{html,logs} -p
Каталог html будет содержать публичные файлы, а каталог logs будет содержать журналы сервера.
Далее откройте консоль администратора и перейдите в раздел Virtual Hosts слева и нажмите кнопку «Добавить».

Заполните значения, как указано
Virtual Host Name: example.com
Virtual Host Root: $SERVER_ROOT/example.com/
Config File: $SERVER_ROOT/conf/vhosts/$VH_NAME/vhconf.conf
Follow Symbolic Link: Yes
Enable Scripts/ExtApps: Yes
Restrained: Yes
External App Set UID Mode: Server UID

Нажмите кнопку «Сохранить», когда закончите. Вы получите следующую ошибку, потому что файл конфигурации в данный момент не существует. Нажмите на ссылку, чтобы создать файл конфигурации.

Нажмите кнопку «Сохранить» снова, чтобы завершить создание виртуального хоста.
После создания виртуального хоста перейдите в Virtual Hosts -> Choose Virtual Host(example.com) -> General и измените конфигурацию, как указано.
Document Root: $VH_ROOT/html/
Domain Name: example.com
Enable Compression: Yes

Нажмите кнопку «Сохранить», когда закончите. Далее нам нужно настроить файлы индекса. Нажмите кнопку редактирования рядом с файлами индекса в разделе General. Установите следующие параметры.
Use Server Index Files: No
Index files: index.php, index.html, index.htm
Auto Index: No

Нажмите «Сохранить», когда закончите. Далее нам нужно выбрать файлы журнала. Перейдите в раздел Log и нажмите «Редактировать» рядом с Virtual Host Log и заполните следующие значения.
Use Server’s Log: Yes
File Name: $VH_ROOT/logs/error.log
Log Level: ERROR
Rolling Size (bytes): 10M

Вы можете выбрать Log Level как DEBUG, если вы находитесь на производственной/разработческой машине.
Нажмите «Сохранить», а затем нажмите знак «плюс» в разделе Access Log, чтобы добавить новую запись. Заполните следующие значения.
Log Control: Own Log File
File Name: $VH_ROOT/logs/access.log
Piped Logger: Not Set
Log Format: Not Set
Log Headers: Not Set
Rolling Size (bytes): 10M
Keep Days: 30
Bytes log: Not Set
Compress Archive: Yes

Нажмите «Сохранить», когда закончите. Далее нам нужно настроить Access Control в разделе Security. Установите следующие значения.
Allowed List: *
Denied List: Not set

Нажмите «Сохранить», когда закончите. Далее нам нужно установить Script Handler Definition. Установите следующие значения.
Suffixes: php
Handler Type: LiteSpeed SAPI
Handler Name: [Server Level]: lsphp74

Далее нам нужно установить Rewrite Control в разделе Rewrite. Установите следующие значения.

И наконец, нам нужно установить слушателей. Перейдите в раздел Listeners и нажмите кнопку «Просмотреть» рядом с Default Listener. Затем нажмите кнопку «Добавить» рядом с Virtual Host Mappings, чтобы добавить новое сопоставление и установите следующие значения.
Нажмите «Сохранить», когда закончите. Теперь нажмите кнопку Мягкая перезагрузка, чтобы применить все изменения выше и перезапустить сервер.
Шаг 8 - Настройка SSL
Настройка SSL в OpenLiteSpeed требует от нас настройки двух сертификатов. Самоподписанный сертификат для всего сервера и сертификат Let’s Encrypt, специфичный для сайта.
Давайте сначала создадим самоподписанный сертификат.
$ openssl req -x509 -days 365 -newkey rsa:4096 -keyout key.pem -out cert.pem -nodes
Generating a RSA private key
..++++
......................++++
writing new private key to 'key.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Вы можете нажимать Enter для всех полей и оставить их пустыми.
Сертификаты теперь хранятся в каталоге /home/user. Нам понадобится эта информация позже.
Чтобы использовать Let’s Encrypt, нам нужно установить инструмент Certbot.
$ sudo apt install certbot
Получите SSL сертификат.
$ sudo certbot certonly --webroot -w /usr/local/lsws/example.com/html/ -d example.com
Следуйте интерактивному запросу.
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
-------------------------------------------------------------------------------
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree
in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
-------------------------------------------------------------------------------
(A)gree/(C)ancel: A
-------------------------------------------------------------------------------
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
-------------------------------------------------------------------------------
(Y)es/(N)o: N
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Using the webroot path /usr/local/lsws/example.com/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/example/fullchain.pem. Your key file has
been saved at:
/etc/letsencrypt/live/linode.nspeaks.com/privkey.pem Your cert will
expire on 2020-09-04. To obtain a new or tweaked version of this
certificate in the future, simply run certbot again. To
non-interactively renew *all* of your certificates, run "certbot
renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
Теперь откройте консоль администратора и перейдите в Listeners >> Add New Listener и добавьте следующие значения.
Listener Name: SSL
IP Address: ANY
Port: 443
Secure: Yes

Нажмите «Сохранить», когда закончите. Далее перейдите в раздел Virtual Host Mappings под SSL Listener, нажав на SSL, нажмите кнопку «Добавить» и заполните следующие значения.
Virtual Host: example.com
Domains: example.com
Нажмите «Сохранить», когда закончите.
Далее перейдите в Listeners >> SSL Listener >> SSL Tab >>SSL Private Key & Certificate (кнопка «Редактировать») и заполните следующие значения для самоподписанного сертификата, который мы создали ранее.
Private Key File: /home/user/key.pem
Certificate File: /home/user/cert.pem
Chained Certificate: Yes

Далее перейдите в Virtual Hosts >> example.com >> SSL Tab >> SSL Private Key & Certificate (кнопка «Редактировать») и заполните следующие значения с сертификатом Let’s Encrypt.
Private Key File: /etc/letsencrypt/live/example.com/privkey.pem
Certificate File: /etc/letsencrypt/live/example.com/fullchain.pem
Chained Certificate: Yes

Нажмите «Сохранить», когда закончите.
Перезапустите сервер, нажав кнопку «Мягкая перезагрузка».
Шаг 9 - Тестирование сайта
Создайте тестовый файл в вашем каталоге html.
$ sudo nano /usr/local/lsws/example.com/html/index.php
Вставьте следующий код в редактор Nano.
Тест установки сервера OpenLiteSpeed
Привет,';
// Определите переменные PHP для подключения к MySQL.
$servername = "localhost";
$username = "testuser";
$password = "password";
// Создайте соединение MySQL.
$conn = mysqli_connect($servername, $username, $password);
// Сообщите, если соединение не удалось или прошло успешно.
if (!$conn) {
exit('Ваше соединение не удалось.
' . mysqli_connect_error());
}
echo '
Вы успешно подключились.
';
?>
Посетите ваш сайт по адресу https://example.com в браузере, и вы должны увидеть следующую страницу.

На этом все для этого руководства. Если у вас есть какие-либо вопросы, задавайте их в комментариях ниже.
Get new posts in your inbox
No spam. Unsubscribe anytime.