Установка Nginx, запуск

Установка Nginx, запуск

Устанавливаем Nginx

Nginx доступен в стандартных репозиториях Ubuntu 24.4 поэтому его просто обновляем и устанавливаем. Если вы под root то без sudo. 

sudo apt update && sudo apt install nginx -y

Проверить установленную версию Nginx.

nginx -v 

Проверить статус работы Nginx

sudo systemctl status nginx

Запущен и работает если  Active: active (running)

Добавление Nginx в автозагрузку, чтобы при перезапуске сервера стартовал автоматически.

sudo systemctl enable nginx

Вводи команду и проверяем работу Nginx

curl -I http://localhost

Она должна вернуть ответ HTTP/1.1 200 OK

Открываем порты во встроенном файрволе Ubuntu (UFW)
Разрешите Nginx принимать трафик

sudo ufw allow 'Nginx Full'

Но на свежеустановленном Nginx настроен только HTTP (порт 80).
Пишем в браузере  http://IP_ВАШЕГО_СЕРВЕРА

И видим приветствующий нас заголовок.

Welcome to nginx!

Поздравляю вы установили и запустили Nginx

Если страница не открылась.
Обновите правила и проверьте статус файрвола:

sudo ufw reload
sudo ufw status

Основные пути для работы:

  • /var/www/html — корневая папка для файлов вашего сайта.
  • /etc/nginx/nginx.conf — главный конфигурационный файл.
  • /etc/nginx/sites-available/ — папка для создания конфигураций (виртуальных хостов) отдельных сайтов.

Остановить nginx

sudo systemctl stop nginx

Или если нужно, подключаем репозиторий.
Не рекомендуется, а лишь при большой не обходимости.

add-apt-repository ppa:nginx/stable 

  Следующая команда устанавливает расширенную версию Nginx с большим набором встроенных сторонних модулей, так же устанавливайте при большой необходимости.  

sudo apt-get install nginx nginx-extras

Nginx с Apache

Nginx Apache

Если вы уже работаете на веб-сервере Apache, то при попытке запустить Nginx они неизбежно вступят в конфликт.
Проблема в том, что оба сервера по умолчанию пытаются занять один и тот же сетевой
порт :80 (для обычного веб-трафика).
Два приложения не могут одновременно слушать один и тот же порт, поэтому Nginx выдаст ошибку.

nginx[8112]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
nginx: [emerg] still could not bind()
systemd[1]: nginx.service: Control process exited, code=exited status=1
systemd[1]: Failed to start A high performance web server and a reverse proxy server.
systemd[1]: nginx.service: Unit entered failed state.
systemd[1]: nginx.service: Failed with result 'exit-code'.
dpkg: error processing package nginx (--configure):
dependency problems — leaving unconfigured
Errors were encountered while processing:
nginx-full
nginx
E: Sub-process /usr/bin/dpkg returned an error code (1)

Если вы обновили сайт или пишите без использования Апачи,
Apache можно удалить.
В ином случае так как Nginx будет принимать запрос при подключении HTTP, то есть будет первым, Apache следует перенести на другой порт.

Заходим в настройки портов

udo nano /etc/apache2/ports.conf

Найдите строку  

Listen 80

и замените её, например, на 

Listen 8080

Измените порт в дефолтном виртуальном хосте или в подключенном файле с вашим домен.conf:

sudo nano /etc/apache2/sites-enabled/000-default.conf

Замените

<VirtualHost *:80> 

на 

<VirtualHost *:8080>

Перезапускаем Апачи с обновленными портами

sudo systemctl restart apache2

Запускаем Nginx

sudo systemctl start nginx

 

09:09
1141
Lit
RSS
Нет комментариев. Ваш будет первым!

Похожий контент

1. Подключаем модуль remoteip, идущий в комплектеsudo a2enmod remoteip 2. Настраиваем. ...