Linux
Установка веб-сервера Nginx на примере Ubuntu 20.04
anton
16-08-2020 13:09
6 мин на чтение
353
0

Nginx – это свободный веб-сервер, который известен своей высокой производительность при обработке статических и динамических страниц. Он обеспечивает простую настройку и использует мало ресурсов на сервере. Это отличная альтернатива серверу Apache. В данной статье я расскажу о базовой установке веб-сервера на примере операционной системы Ubuntu 20.04.

Процедура установки Nginx на Ubuntu 20.04 выглядит следующим образом:

  1. Обновите систему с помощью команды apt.
  2. Установите Nginx в Ubuntu с помощью команды apt-get install nginx.
  3. Настройте сервер Nginx.
  4. Включите и перезапустите сервер Nginx.

Шаг 1. Заходим на сервер с помощью команды SSH

Для начала необходимо подключиться удаленно с своему серверу по SSH. Делается это с помощью команды:

ssh user@<IP-address>

Где на месте user – имя пользователя, а на месте <IP-address> – адрес удаленного сервера. Все эти данные можно уточнить у своего хостинг-провайдера.

Шаг 2. Устанавливаем последние обновления

Перед установкой веб-сервера Nginx необходимо установить последние обновления безопасности. Выполните следующие команды apt-get:

sudo apt-get update
sudo apt-get upgrade

При удачной установке:

Устанавливаем непосредственно пакет Nginx

С помощью той же команды apt-get устанавливаем пакет веб-сервера Nginx:

sudo apt-get install nginx

Вас спросят устанавливать ли пакет – выберите Да (yes).

Команды для работы с сервером Nginx

После установки проверьте статус работы сервера Nginx с помощью команды:

sudo systemctl status nginx

Как видим статус сервера active (running) – после установки сервер Nginx запускается автоматически.

Мы приведем несколько команд по управлению сервера Nginx.

Включить сервер Nginx во время загрузки:

sudo systemctl enable nginx

Остановить сервер Nginx:

sudo systemctl stop nginx

Запустить остановленный сервер Nginx:

sudo systemctl start nginx

Перезагрузка сервера Nginx (с закрытием соединений):

sudo systemctl restart nginx

Перезагрузка сервера Nginx (без закрытия соединений):

sudo systemctl reload nginx

Последняя команда особенно полезна, когда вы вносите какие-либо изменения на активно сервер и вам необходимо, чтобы был доступен при перезагрузке.

Шаг 5. Откройте порты 80 и 443 с помощью UFW в Ubuntu Linux (настройка брандмауэра)

UFW – это сокращение от несложного брандмауэра . Он используется для управления брандмауэром Linux и имеет целью предоставить пользователю простой в использовании интерфейс.

Первым делом устанавливает UFW:

sudo apt-get install ufw

Если вы попробуете посмотреть статус брандмауэра с помощью команды:

ufw status

.. то он напишет вам status: inactive. Это означает, что UFW еще не активирован. Включить его можно с помощью команды:

ufw enable

После этого при вводе команды ufw status будет отображаться Status: active.

Идем дальше. Для работы с веб-сервером нам нужно открыть три порта HTTP (80), HTTPS (443) и SSH (22). Чтобы открыть порты выполните:

ufw allow https comment 'Open all to access Nginx port 443'
ufw allow http comment 'Open access Nginx port 80'
ufw allow ssh comment 'Open access OpenSSH port 22'

Далее посмотрите статус с помощью знакомой нам команды ufw status.

Видим все нужные порты открылись.

Шаг 6. Проверяем установку Nginx

После проделанных манипуляций можно проверить правильность установки веб-сервера. Для этого введите IP-адрес своего сервера в поисковую строку браузера и нажмите Enter. Например, у меня это 23.111.202.45.

У вас должно получиться приветственное окно Nginx.

Шаг 7. Тонкая настройка сервера Nginx

Далее сделаем так, чтобы наш сервер был доступен по некоторому публичному домену. В моем случае это pullcash.online. 


Создаем каталог для хранения веб-страниц

С помощью двух команд mkdir создайте каталог для будущих файлов сайта:

mkdir /home/lighttpd/
mkdir /home/lighttpd/http/

Создаем пользователя для хранения веб-страниц

Добавьте нового пользователя Linux с помощью команды useradd (вместо имени www-pullcash введите свое):

sudo useradd -s /usr/sbin/nologin -m -d /home/lighttpd/ -c 
'cms.cyberciti.biz user' www-pullcash

Создать новый образец веб-страницы

Используйте текстовый редактор, такой как команда nano:

sudo nano /home/lighttpd/http/index.html

Добавьте следующий HTML-код:

Установите разрешение для каталога

Установите права на чтение каталога (вместо www-pullcash – имя вашего пользователя):

sudo chown -vR www-pullcash:www-pullcash /home/lighttpd/

Создайте конфигурацию для вашего домена

Создаем файл конфигурации домена (вместо pullcash.online – ваш домен):

nano /etc/nginx/sites-available/http.pullcash.online.conf

Добавляем следующую конфигурацию в файл:

Выходим и сохраняемся из файла конфигурации с помощью сочетания клавиш Ctrl+X.

Создайте новую программную ссылку с помощью команды ln в каталоге сайтов для включения домена:

cd /etc/nginx/sites-enabled/ 
sudo ln -v -s /etc/nginx/sites-available/http.pullcash.online.conf

Протестируйте и аккуратно перезагрузите сервер

Проверьте правильность настроек сервера Nginx с помощью команды:

nginx -t

У вас должно получиться что-то вроде:

Nginx говорит, что у нас все успешно настроилось.

Перезагружаем сервер командой:

sudo systemctl reload nginx

Шаг 8. Привязываем доменное имя к серверу

Доменное имя pullcash.online я купил на регистраторе доменных имен REG.ru. Сервер у меня находится на хостинге Fozzy. Покажу на своем примере как я привязал домен к хостингу.

Первым делом я указал для регистратора доменных имен свои DNS-сервера:

Далее прописываю ресурсную A-запись, которая будет связывать домен pullcash.online с IP-адресом 23.111.202.45.

Изменения DNS может занимать до 24 часов.

Проверить связку домена с IP можно с помощью команды nslookup:

Шаг 9. Проверяем доступность сайта по доменному имени

После всех проделанных манипуляция вбиваем в адресную строку браузера свой домен и проверяем доступность сайта:

Если все сделано правильно – сайт станет доступен.

Помогла ли вам статья?
Спасибо! Ваш голос учтен.