WEB-сервер lighttpd на CentOS7
Lighttpd – легковесный web-сервер, простая альтернатива Apache.
Установка сервера:
# yum install lighttpd
Дополнительно установим сетевые уитилиты:
# yum install net-tools
Конфигурационный файл сервера - /etc/lighttpd/lighttpd.conf
Перво-наперво необходимо указать серверу что он будет слушать. Для этого редактируем файл:
# nano /etc/lighttpd/lighttpd.conf
Меняем закомментированную строку
#server.bind = "localhost"
на:
server.bind = "0.0.0.0"
Запуск сервера осуществляется командой:
# systemctl start lighttpd
Добавляем в автозагрузку:
# systemctl enable lighttpd
Проверяем, слушается ли порт:
# netstat -ltupn | grep lighttpd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1359/lighttpd
В браузере при обращении к IP сервера должны увидеть его стартовую страницу:
HTML документы сайта лежат в директории: /var/www/lighttpd/
Для использования php и mysql (mariadb) на сайте выполняем их установку:
Установка MariaDB.
# yum install mysql mariadb-server
Добавляем скрипт автозапуска и стартуем
# systemctl enable mariadb.service
# systemctl start mariadb.service
Задаем пароль root для сервера MySQL
# mysql_secure_installation
Сначала вводим на первый вопрос просто <Enter>, затем на следующих вопросах вводим пароль и его подтверждение. На остальные вопросы отвечаем ДА (y)
Сервер lighttpd работает с php через fastcgi.
Установка php и сервера fastcgi, через которого будет происходить запуск команд php от web-сервера выполняется так:
# yum install php php-mysql
# yum install lighttpd-fastcgi
Настраиваем модуль fastcgi в lighttpd.
Для этого сначала определяемся, где лежит php-cgi
# which php-cgi
/usr/local/bin/php-cgi
Этот путь к исполняемому файлу нам понадобиться в дальнейшем.
Открываем конфигурационный файл fastcgi.conf
# nano /etc/lighttpd/conf.d/fastcgi.conf
Проверяем, что строка подключения модуля на месте:
server.modules += ( "mod_fastcgi" )
Вставляем конфигурацию fastcgi, где используем найденный ранее путь к php-cgi в переменной «bin-path». Остальное не меняем.
fastcgi.server = ( ".php" => ((
"bin-path" => "/usr/local/bin/php-cgi",
"socket" => "/tmp/php.socket",
"max-procs" => 1,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "16",
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"broken-scriptfilename" => "enable"
)))
Теперь добавляем файл конфигурации сервера fastcgi в конфиг сервера lighttpd.
# nano /etc/lighttpd/modules.conf
Раскоментируем строчку касающейся включения модуля fastcgi.conf в следующем блоке:
##
## FastCGI (mod_fastcgi)
##
include "conf.d/fastcgi.conf"
Рестартуем сервер:
# systemctl restart lighttpd
Для проверки поддержки php в lighttpd создаем тестовый файл:
# nano /var/www/lighttpd/info.php
вписываем туда
<?php
phpinfo();
?>
И проверяем обратившись к этому файлу через браузер, что страница описания функций php открывается. Обращаем внимание, что поддержка MySQL присутствует (есть блок MySQL и блок PDO MySQL). Если используется версия php 7, то блока MySQL может и не быть.