Lighttpd - це безкоштовний, відкритий та високопродуктивний веб-сервер, розроблений Яном Кнешке. Він має низький слід пам'яті в порівнянні з іншими веб-серверами і спеціально розроблений для критичних середовищ. Це безпечно, швидко та може обробляти до 10,000 з'єднань паралельно на одному сервері. Він використовується на багатьох веб-сайтах, включаючи YouTube, Bloglines, WikiMedia та багато інших. Lighttpd оснащений багатим набором функцій, такими як FastCGI, SCGI, Auth, перезапис URL-адрес, стиснення виводу, механізм подій тощо. Ці функції в поєднанні створюють переконливе і високоефективне рішення веб-сервера.
Почнемо з монтажу.
Зміст
Передумови
- Для цілей цього підручника ми будемо використовувати a Debian 9 VPS.
- Також потрібен повний кореневий доступ SSH або користувач із правами sudo.
- Дійсне доменне ім’я вказано IP-адресою вашого сервера. У цьому підручнику ми будемо використовувати
test.example.com
.
Крок 1: Увійдіть через SSH і оновіть систему
По-перше, нам знадобиться ввійти на наш сервер за допомогою SSH. Ви можете зробити це, ввівши цю команду:
ssh [захищена електронною поштою] IP_Address -p Port_Number
Не забудьте замінити "root" на ваше ім'я користувача, якщо ви не використовуєте користувача root. Змініть "IP_Address" та "Port_Number" відповідно до IP-адреси вашого сервера та номера порту SSH.
Після входу в систему ви повинні оновити всі свої пакунки до їх останніх доступних версій.
apt-get update -y apt-get upgrade -y
Після завершення оновлень ми можемо перейти до наступного кроку.
Крок 2: Установка сервера MariaDB
Спочатку ми встановимо сервер баз даних MariaDB, виконавши таку команду:
apt-get install mariadb-server mariadb-client
Після завершення встановлення запустіть службу MariaDB і включіть її до запуску після перезавантаження системи:
systemctl почати mariadb systemctl включити mariadb
Далі увійдіть в оболонку MariaDB за допомогою наступної команди:
MySQL
Якщо все добре, ви повинні побачити наступний висновок:
Ласкаво просимо до монітора MariaDB. Команди закінчуються на; або g. Ваш ідентифікатор з’єднання MariaDB - 4 Версія сервера: 10.1.38-MariaDB-0 + deb9u1 Debian 9.8 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab та інші. Введіть 'help;' або "h" за допомогою. Введіть 'c', щоб очистити поточний оператор введення.
MariaDB [(немає)]>
Потім захистіть свою установку MariaDB за допомогою mysql_secure_installation
сценарій. Цей скрипт видалить анонімних користувачів, заборонить кореневе вхід у систему та видалить тестову базу даних.
mysql_secure_installation
Відповідь на всі питання, як показано нижче:
Введіть поточний пароль для root (введіть для жодного): натисніть [Enter] Встановити пароль root? [Т / н]: N Видалити анонімних користувачів? [Y / n]: Y Заборонити віддалений вхід у систему? [Y / n]: Y Видалити тестову базу даних і отримати до неї доступ? [Y / n]: Y Перезавантажити таблиці привілеїв зараз? [Y / n]: Y.
Після того, як MariaDB захищено, можна перейти до наступного кроку.
Крок 3: Встановіть Lighttpd
За замовчуванням остання версія Lighttpd доступна у сховищі Debian 9 за замовчуванням. Ви можете встановити його, просто виконавши таку команду:
apt-get встановити lighttpd
Після встановлення запустіть послугу Lighttpd і включіть її до запуску після перезавантаження системи за допомогою наступної команди:
systemctl запуск lighttpd systemctl включити lighttpd
Ви можете перевірити статус Lighttpd за допомогою наступної команди:
systemctl статус lighttpd
Якщо все добре, ви повинні отримати такий результат:
● lighttpd.service - завантажений демон Lighttpd: завантажено (/lib/systemd/system/lighttpd.service; увімкнено; попередньо встановлено постачальника: увімкнено) Активний: активний (працює) з понеділка 2019-08-12 14:48:35 UTC; 29s тому Основний PID: 2354 (lighttpd) CGroup: /system.slice/lighttpd.service └─2354 / usr / sbin / lighttpd -D -f /etc/lighttpd/lighttpd.conf 12 серпня 14:48:35 debian9 systemd [ 1]: Запуск Lighttpd Daemon ... 12 серпня 14:48:35 debian9 systemd [1]: Запущений Lighttpd Daemon.
Тепер відкрийте веб-браузер і відвідайте наступну URL-адресу http://test.example.com
. Ви повинні отримати сторінку за замовчуванням Lighttpd, як показано нижче:
Коренем документа за замовчуванням Lighttpd є /var/ww/html
в Debian 9 основний файл конфігурації
/etc/lighttpd/lighttpd.conf
та інші файли конфігурації розміщені за адресою /etc/lighttpd/conf-available
каталог.
Крок 4: Встановіть PHP та PHP-FPM
Далі ми встановимо PHP та PHP-FPM та надамо їм можливість працювати з Lighttpd. Ви можете встановити PHP разом із усіма необхідними розширеннями за допомогою наступної команди:
apt-get install php php-cli php-поширений php-fpm php-mysql
Після встановлення нам потрібно змінити файл php.ini, щоб включити підтримку PHP для Lighttpd.
nano /etc/php/7.0/fpm/php.ini
Змініть значення cgi.fix_pathinfo на 1:
cgi.fix_pathinfo = 1
Зберегти та закрити файл.
За замовчуванням PHP-FPM прослуховує на сокет UNIX /var/run/php7-fpm.sock
. Отже, нам буде потрібно змінити файл /etc/php/7.0/fpm/pool.d/www.conf
і встановіть PHP-FPM для прослуховування на сокет TCP.
nano /etc/php/7.0/fpm/pool.d/www.conf
Знайдіть рядок:
listen = /run/php/php7.0-fpm.sock
Замініть його наступним рядком:
слухати = 127.0.0.1: 9000
Збережіть і закрийте файл. Далі відкрийте файл 15-fastcg-php.conf
щоб увімкнути підтримку FastCGI у Lighttpd:
nano /etc/lighttpd/conf-available/15-fastcgi-php.conf
Знайдіть наступні рядки:
"bin-path" => "/ usr / bin / php-cgi", "socket" => "/var/run/lighttpd/php.socket",
Замініть їх наступним:
"хост" => "127.0.0.1", "порт" => "9000",
Збережіть і закрийте файл. Потім увімкніть модулі FastCGI та FastCGI-PHP за допомогою наступної команди:
lighty-enable-mod fastcgi lighty-enable-mod fastcgi-php
Нарешті, перезапустіть сервіс Lighttpd та PHP-FPM, щоб застосувати всі зміни конфігурації:
systemctl перезапустіть php7.0-fpm systemctl перезапустіть lighttpd
Ви можете перевірити PHP-FPM за допомогою наступної команди:
systemctl статус php7.0-fpm
Якщо все добре, ви повинні отримати такий результат:
● php7.0-fpm.service - PHP 7.0 FastCGI Process Manager завантажено: завантажено (/lib/systemd/system/php7.0-fpm.service; увімкнено; постачальник попередньо встановлений: увімкнено) Активний: активний (працює) з понеділка 2019 -08-12 14:55:36 UTC; 1 хв. 56 с. Тому Документи: man: php-fpm7.0 (8) Основний PID: 12288 (php-fpm7.0) Статус: "Процеси активні: 0, в режимі очікування: 2, Запити: 0, повільно: 0, Трафік: 0req / сек "Завдання: 3 (обмеження: 7372) CGroup: /system.slice/php7.0-fpm.service ├─12288 php-fpm: основний процес (/etc/php/7.0/fpm/php-fpm.conf) ├ ─12289 php-fpm: пул www └─12290 php-fpm: пул www 12 серпня 14:55:36 debian9 systemd [1]: Зупинено PHP 7.0 FastCGI Process Manager. 12 серпня 14:55:36 debian9 systemd [1]: Запуск PHP 7.0 FastCGI Process Manager ... 12 серпня 14:55:36 debian9 systemd [1]: Запуск PHP 7.0 FastCGI Process Manager.
Крок 5: Перевірте підтримку PHP-FPM на Lighttpd
Зараз Lighttpd встановлений і налаштований для роботи з FPM / FastCGI. Далі нам потрібно буде створити віртуальний файл конфігурації хоста для Lighttpd для тестування підтримки PHP-FPM.
Спочатку створіть віртуальний каталог хостів із наступною командою:
mkdir / var / www / html / testite
Далі створіть файл конфігурації віртуального хоста за допомогою наступної команди:
nano /etc/lighttpd/conf-available/lighttpd.conf
Додайте наступні рядки:
$ HTTP ["host"] == "test.example.com" {server.document-root = "/ var / www / html / testsite" index-file.names = ("info.php")}
Збережіть і закрийте файл. Потім увімкніть віртуальний хост за допомогою наступної команди:
ln -s /etc/lighttpd/conf-available/lighttpd.conf / і т.д. / lighttpd / конфіденційне забезпечення /
Далі створіть файл info.php всередині / var / www / html / testingite для тестування підтримки PHP-FPM:
nano /var/www/html/testsite/info.php
Додайте наступні рядки:
Потім увімкніть правильний дозвіл /var/www/html/testsite
з наступною командою:
chown -R www-data: www-data / var / www / html / testite
Нарешті, перезапустіть службу Lighttpd за допомогою наступної команди:
systemctl перезапустити lighttpd
Тепер відкрийте веб-браузер і введіть URL-адресу http://test.example.com
. Ви повинні побачити, що PHP працює через FPM / FastCGI на наступній сторінці:
У цьому підручнику ми дізналися, як встановити Lighttpd на Debian 9 VPS. Ми також дізналися, як увімкнути MariaDB, PHP та PHP-FPM за допомогою FastCGI у Lighttpd. Для отримання додаткової інформації ви можете відвідати офіційну документацію Lighttpd.