Введение
Nginx — это высокопроизводительный HTTP-сервер с открытым исходным кодом и обратный прокси-сервер, который обслуживает некоторые из крупнейших сайтов в Интернете. По сравнению с Apache, Nginx может обрабатывать очень большое количество одновременных подключений и требует меньше памяти для каждого подключения.
Nginx можно использовать как автономный веб-сервер и как обратный прокси-сервер для HTTP- и не-HTTP-серверов.
В этом руководстве мы объясним, как установить и управлять Nginx в Debian 10 Buster.
Если вы намерены установить Nginx на удаленный сервер, продолжайте читать, в противном случае, если вы хотите установить Nginx на свой локальный компьютер, пропустите первый абзац «Подключение к серверу» и прочитайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh nome_utente@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Установите Nginx
Пакет Nginx включен в репозитории Debian 10 по умолчанию. Установка довольно проста, просто запустите следующие команды от имени пользователя root или пользователя с привилегиями sudo:
sudo apt update
sudo apt install nginx
Служба Nginx запустится автоматически в конце процесса установки.Чтобы проверить тип статуса:
sudo systemctl status nginx
Вывод будет выглядеть следующим образом:
● 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 Wed 2020-02-26 22:54:32 CET; 6s ago
Docs: man:nginx(8)
Main PID: 2037 (nginx)
Tasks: 2 (limit: 2301)
Memory: 7.3M
CGroup: /system.slice/nginx.service
├─2037 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─2038 nginx: worker process
Настроить брандмауэр
Предполагая, что вы используете UFW в Debian для управления брандмауэром, вам необходимо открыть порты HTTP ( 80
) и HTTPS ( 443
). Вы можете сделать это, включив профиль «Nginx Full», который включает правила для обоих портов:
sudo ufw allow 'Nginx Full'
Чтобы проверить тип статуса Nginx:
sudo ufw status
Вывод будет выглядеть следующим образом:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
Nginx Full ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
Nginx Full (v6) ALLOW Anywhere (v6)
Протестируйте установку
Вы можете протестировать новую установку Nginx, подключившись к вашему http://YOUR_IP
в браузере, и вам будет представлена целевая страница Nginx по умолчанию, как показано на изображении ниже:
Управление сервисом Nginx
Вы можете управлять службой Nginx так же, как и любой другой службой systemd.
Чтобы остановить службу Nginx, запустите:
sudo systemctl stop nginx
Чтобы запустить его снова, введите:
sudo systemctl start nginx
Чтобы перезапустить службу Nginx:
sudo systemctl restart nginx
Перезагрузите службу Nginx после внесения некоторых изменений в конфигурацию:
sudo systemctl reload nginx
По умолчанию служба Nginx запускается автоматически при запуске. Если вы хотите отключить запуск службы Nginx при запуске:
sudo systemctl disable nginx
Чтобы повторно активировать его:
sudo systemctl enable nginx
Структура Nginx и лучшие практики
- Файлы конфигурации Nginx хранятся в каталоге
/etc/nginx
. - Основной файл конфигурации Nginx —
/etc/nginx/nginx.conf
. - Файлы конфигурации блока сервера (vhost) хранятся в каталоге
/etc/nginx/sites-available
. Файлы конфигурации, находящиеся в этом каталоге, используются Nginx только при привязке к каталогу/etc/nginx/sites-enabled
. - Чтобы включить блокировки сервера, создайте символическую ссылку (указатель) из файла конфигурации в каталоге
sites-available
для сайтов, на каталог, вsites-enabled
. - Настоятельно рекомендуется следовать стандартному соглашению об именах, например, если ваше доменное имя mydomain.com, используйте
mydomain.com
в качестве/etc/nginx/sites-available/mydomain.com.conf
файла конфигурации домена. - Каталог
/etc/nginx/snippets
содержит сниппеты конфигурации, которые можно включить в файлы блокировки сервера. Если вы используете повторяющиеся сегменты конфигурации, вы можете превратить эти сегменты во фрагменты и включить файл фрагмента в серверные блоки. - Файлы журнала Nginx (
access.log
иerror.log
) находятся в каталоге/var/log/nginx/
. Рекомендуется иметь разные файлы журналовaccess
иerror
для каждого блока сервера. - Вы можете установить корень документа домена в любое место, которое вы хотите. Наиболее распространенные места для веб-рутов включают:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
Вывод
Установка Nginx на Debian 10 Buster — это вопрос запуска одной команды.