Теперь можем обновлять список пакетов и устанавливать веб-сервер nginx:
# apt-get update # apt-get install nginx
Демон запускается автоматически. Попробуйте открыть браузер и ввести IP-адрес сервера. Вы должны увидеть приветствие от Nginx.
Устанавливаем php и php-интерпретатор:
# apt-get install php5 php5-fpm
В Astra Linux по умолчанию nginx работает от учетной записи nginx, а php-fpm — от www-data. В результате этого при попытке использовать веб-сервер с php-скриптами мы получим ошибку. Для решения этой проблемы необходимо поменять пользователя, от которого будет работать либо nginx, либо php-fpm. В данном примере, nginx:
# vi /etc/nginx/nginx.conf
* самая первая строчка — меняем nginx на www-data.
* site.local необходимо заменить на домен вашего веб-приложения или сайта. ** /var/www/site.local — директория, в которую мы поместим файлы сайта. *** allow 192.168.0.0/16 — подсеть, для которой мы разрешаем доступ к сайту. Если ограничивать не требуется, удалите строчку и следующую за ней deny all. **** Остальные параметры я рекомендую изучить самостоятельно.
Создаем директорию для сайта, которую мы указали в конфигурационном файле:
Создаем в нем файл index.php с функцией phpinfo:
Перезапускаем наши демоны:
# service php5-fpm restart && service nginx restart
Проверьте работоспособность сервера, введя в адресной строке браузера IP-адрес сервера (в данном примере, 192.168.0.15). Сервер должен вернуть много параметров в различных таблицах.
Также в данных таблицах вы должны увидеть «MySQL Suppert — Enabled». Это говорит о том, что сервер готов к работе с базой MySQL.
В данной статье представлена инструкция по установке web-сервера NGINX. Web-сервера NGINX (пакет nginx) доступен в составе расширенного репозитория Astra Linux Special Edition x.7 (см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования ).
Что такое NGINX
Общая информация
NGINX (читается [engine x]) — это HTTP-сервер и обратный прокси-сервер, почтовый прокси-сервер, а также TCP/UDP прокси-сервер общего назначения, выполняющий следующие функции:
Основная функциональность HTTP-сервера:
Обслуживание статических запросов, индексных файлов, автоматическое создание списка файлов, кэш дескрипторов открытых файлов;
Акселерированное обратное проксирование с кэшированием, распределение нагрузки и отказоустойчивость;
Акселерированная поддержка FastCGI, uwsgi, SCGI и memcached серверов с кэшированием, распределение нагрузки и отказоустойчивость;
Модульность;
Фильтры, в том числе сжатие (gzip), byte-ranges (докачка), chunked ответы, XSLT-фильтр, SSI-фильтр, преобразование изображений; параллельная обработка подзапросов на одной странице в SSI-фильтре через прокси или FastCGI/uwsgi/SCGI;
Поддержка SSL и расширения TLS SNI;
Поддержка HTTP/2 с приоретизацией на основе весов и зависимостей;
Расширенная функциональности HTTP-сервера;
Виртуальные серверы, определяемые по IP-адресу и имени;
Поддержка keep-alive и pipelined соединений;
Настройка форматов журналов, буферизованная запись в журналы, быстрая ротация журналов, запись журналов в syslog;
Специальные страницы для ошибок 3xx-5xx;
rewrite-модуль: изменение URI с помощью регулярных выражений;
Выполнение разных функций в зависимости от адреса клиента;
Ограничение доступа в зависимости от адреса клиента, по паролю (HTTP Basic аутентификация) и по результату подзапроса;
Проверка HTTP referer;
Методы PUT, DELETE, MKCOL, COPY и MOVE;
FLV и MP4 стриминг;
Возможность ограничения скорости отдачи ответов;
Возможность ограничение числа одновременных соединений и запросов с одного адреса;
Геолокация по IP-адресу;
A/B-тестирование;
Зеркалирование запросов;
Встроенный Perl;
Сценарный язык njs;
Функциональность почтового прокси-сервера:
Перенаправление пользователей на IMAP- или POP3-серверы с использованием внешнего HTTP-сервера аутентификации;
Аутентификация пользователей с помощью внешнего HTTP-сервера аутентификации и перенаправление соединения на внутренний SMTP-сервер;
Поддерживаемые методы аутентификации:
POP3: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
IMAP: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
SMTP: AUTH LOGIN/PLAIN/CRAM-MD5;
Поддержка протоколов SSL, STARTTLS, STLS.
Функциональность TCP/UDP прокси-сервера:
Проксирование TCP и UDP;
Поддержка SSL и расширения TLS SNI для TCP;
Распределение нагрузки и отказоустойчивость;
Ограничение доступа в зависимости от адреса клиента;
Выполнение разных функций в зависимости от адреса клиента;
Ограничение числа одновременных соединений с одного адреса;
Настройка форматов журналов, буферизованная запись в журналы, быстрая ротация журналов, запись журналов в syslog;
Геолокация по IP-адресу;
A/B-тестирование;
Сценарный язык njs;
Архитектура и масштабируемость:
Один главный и несколько рабочих процессов, рабочие процессы работают под непривилегированным пользователем;
Изменение настроек и обновление исполняемого файла без перерыва в обслуживании клиентов;
Поддержка kqueue (FreeBSD 4.1+), epoll (Linux 2.6+), /dev/poll (Solaris 7 11/99+), event ports (Solaris 10), select и poll:
Использование возможностей, предоставляемых kqueue, таких как EV_CLEAR, EV_DISABLE (для временного выключения события), NOTE_LOWAT, EV_EOF, число доступных данных, коды ошибок;
Использование возможностей, предоставляемых epoll, таких как EPOLLRDHUP (Linux 2.6.17+, glibc 2.8+) и EPOLLEXCLUSIVE (Linux 4.5+, glibc 2.24+);
Поддержка sendfile (FreeBSD 3.1+, Linux 2.2+, macOS 10.5+), sendfile64 (Linux 2.4.21+) и sendfilev (Solaris 8 7/01+);
Поддержка файлового AIO (FreeBSD 4.3+, Linux 2.6.22+);
Поддержка DIRECTIO (FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, macOS);
Поддержка accept-фильтров (FreeBSD 4.1+, NetBSD 5.0+) и TCP_DEFER_ACCEPT (Linux 2.4+);
На 10 000 неактивных HTTP keep-alive соединений расходуется около 2.5M памяти;
Минимум операций копирования данных.
Оригинальная документация NGINX
Оригинальная документация NGINX доступна по ссылке: https://nginx.org/ru/
примерный результат проверки при штатной работе службы:
● nginx.service — A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2021-09-07 17:53:58 MSK; 17s ago Docs: man:nginx(8) Main PID: 2080 (nginx) Tasks: 5 (limit: 4637) Memory: 6.8M CGroup: /system.slice/nginx.service ├─2080 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ├─2083 nginx: worker process ├─2084 nginx: worker process ├─2085 nginx: worker process └─2086 nginx: worker process
сен 07 17:53:58 se17 systemd[1]: Starting A high performance web server and a reverse proxy serv сен 07 17:53:58 se17 systemd[1]: Started A high performance web server and a reverse proxy serve
Проверить работу web-сервера nginx, подключившись с помощью любого web-браузера к адресу localhost, например, для браузера firefox:
firefox localhost
При штатной работе сервера будет показана устанавливаемая по умолчанию страница nginx: Расширенный репозиторий Astra Linux Special Edition x.7: установка NGINX > nginx.png» data-location=»Справочный центр > Расширенный репозиторий Astra Linux Special Edition x.7: установка NGINX > nginx.png» data-image-height=»768″ data-image-width=»1024″>