Як встановити та використовувати Nginx в Ubuntu

Nginx (вимовляється як «engine-x») – це популярне програмне забезпечення для веб-серверів, відоме своєю високою продуктивністю та надійністю. Це програмне забезпечення з відкритим вихідним кодом, яке використовується багатьма популярними веб-сайтами, включаючи Netflix, GitHub та WordPress. Nginx може служити веб-сервером, балансувальником навантаження, зворотним проксі-сервером та кешем HTTP, серед іншого.

Він відомий своєю високою продуктивністю, стабільністю та масштабованістю. Це чудовий вибір для розміщення веб-сайтів, програм та служб, яким потрібний швидкий та надійний веб-хостинг. Дотримуючись цього посібника, ви можете встановити та налаштувати Nginx на своєму комп’ютері з Ubuntu та обслуговувати веб-сторінки.

Установка Nginx на Ubuntu

Вимоги

Перед встановленням Nginx в Ubuntu необхідно виконати кілька попередніх умов:

  • Доступ до сервера Ubuntu: Вам потрібний доступ до сервера Ubuntu у вигляді віртуальної машини або виділеного сервера.
  • Доступ суперкористувача: вам потрібно буде мати доступ суперкористувача до сервера Ubuntu. Цього можна досягти, увійшовши в систему як користувач root або використовуючи команду sudo.

Виконайте такі кроки, щоб встановити Apache у системі Ubuntu.

Крок 1. Оновлення Ubuntu

Завжди рекомендується оновлювати сервер Ubuntu до останньої версії перед інсталяцією будь-якого нового програмного забезпечення. Ви можете це зробити, виконавши наступні команди в терміналі:

sudo apt-get update
sudo apt-get upgrade

Крок 2. Налаштуйте інші існуючі веб-сервери

Якщо на сервері Ubuntu встановлено інші веб-сервери, такі як Apache, видаліть їх перед встановленням Nginx. Це дозволить уникнути конфліктів чи проблем із прив’язкою портів.

sudo apt-get remove apache2

В якості альтернативи, якщо ви хочете запустити Nginx разом з Apache, ви можете використовувати Nginx як зворотний проксі-сервер для Apache. Ця конфігурація дозволяє Nginx обробляти вхідні запити та перенаправляти їх до Apache для обробки. Ця установка може запропонувати переваги обох веб-серверів.

Крок 3. Встановіть Nginx

Nginx доступний у репозиторіях Ubuntu. Тому вам не потрібно додавати будь-які інші сторонні репозиторії. Натомість виконайте наведену нижче команду на терміналі, щоб встановити Nginx.

sudo apt install nginx

Крок 4. Запустіть Nginx:

Після встановлення Nginx має запуститися автоматично. Однак ви можете запустити наведену нижче команду, щоб запустити службу, якщо вона не запускається після інсталяції.

sudo systemctl start nginx

Крок 5. Перевірте статус Nginx:

Ви можете перевірити статус Nginx за допомогою наступної команди:

sudo systemctl status nginx

Ця команда покаже поточний статус Nginx.

На зображенні вище видно, що служба Nginx успішно працює у нашій системі.

Порада: якщо ви отримуєте помилку під час запуску служби Nginx, велика ймовірність того, що порт 80 вже використовується. Nginx за промовчанням використовує порт 80 для HTTP-трафіку. Якщо інший сервіс використовує порт 80, Nginx не запуститься. Щоб перевірити, чи використовується порт 80, можна запустити наступну команду:

sudo lsof -i :80

Якщо інший сервіс використовує порт 80, ви можете зупинити цей сервіс, або налаштувати Nginx на використання іншого порту.

Крок 6. Налаштуйте брандмауер

Якщо ви увімкнули брандмауер UFW у своїй системі, переконайтеся, що він правильно налаштований, щоб дозволити вхідний трафік через порти, які використовує Nginx. Стандартний порт, який використовується Nginx, — 80 для HTTP і 443 для HTTPS. Ви можете запустити наведені нижче команди, щоб дозволити трафік Nginx.

sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'

Крок 7. Тестування Nginx

Щоб перевірити, чи правильно працює Nginx, відкрийте веб-браузер і введіть IP-адресу сервера Ubuntu в адресному рядку. Ви можете отримати IP-адресу вашої системи, виконавши будь-яку з наведених нижче команд.

ifconfig
Or,
ip a s

Якщо Nginx встановлено правильно, ви повинні побачити сторінку привітання Nginx за промовчанням.

Створіть свій власний веб-сайт

Веб-сайт, який ви бачите, коли вводите IP-адресу вашої системи у браузері, є веб-сайтом Nginx за замовчуванням і знаходиться в каталозі /var/www/html. Якщо ви бажаєте розмістити статичний HTML-сайт, ви можете видалити файли з каталогу /var/www/html та додати свої власні файли.

Однак ви повинні налаштувати віртуальні хости, якщо хочете розмістити декілька веб-сайтів. Конфігурація віртуального хоста дозволяє запускати кілька веб-сайтів або веб-застосунків на одному сервері. Кожен віртуальний хост має власний набір конфігураційних файлів, що дозволяє вам незалежно налаштовувати поведінку кожного веб-сайту.

Дотримуйтесь інструкцій нижче.

Крок 1. Створіть каталог свого сайту

Використовуйте mkdir для створення каталогу для файлів вашого веб-сайту всередині папки /var/www. Наприклад, ми створимо каталог із ім’ям test-website.

sudo mkdir /var/www/test-website

Крок 2. Створіть новий HTML-файл для веб-сайту:

Тепер вам потрібно додати файли вашого сайту до цього каталогу. Для цього посту ми створимо простий HTML-файл з ім’ям «index.html». Однак, якщо ви працюєте з WordPress або будь-яким іншим, ви можете отримати файли в цей новий каталог.

sudo nano index.html

Додайте у файл базовий HTML-код, наприклад:

<html>
    <head>
        <title>How to Install and Use Nginx on Ubuntu (fosslinux.com)</title>
    </head>
<body bgcolor="skyblue">
    <h1>How to Install and Use Nginx on Ubuntu (fosslinux.com)</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed et dolor quis ex posuere euismod. Sed pharetra vel odio in venenatis. Donec eget eros vel nisi varius rutrum. Aliquam efficitur lacus at purus dictum lobortis. Duis ut diam dignissim, dapibus turpis vel, consectetur orci. Aliquam erat volutpat. Nulla facilisi. Praesent ut sapien sapien.
</p>
<img src="https://www.fosslinux.com/wp-content/uploads/2021/02/nginx-logo.png" alt="Nginx Logo">
</body>
</html>

Збережіть (Ctrl+O, потім Enter) та закрийте файл (Ctrl+X).

Крок 3. Створіть новий конфігураційний файл Nginx для віртуального хоста.

Наступним кроком є створення конфігураційного файлу для нового веб-сайту. У цьому пості ми назвемо його “test-website.conf”. Запустіть термінал та виконайте команду нижче.

sudo nano /etc/nginx/sites-available/test-website.conf

Додайте до файлу наступну конфігурацію:

server {
    listen 80;
    listen [::]:80;
    root /var/www/test_website;
    index index.html;

    server_name test-website.com www.test-website.com;

   location / {
      try_files $uri $uri/ =404;
  }
}

Ця конфігурація вказує Nginx прослуховувати порт 80 та обслуговувати файли з каталогу /var/www/test-website. Він також встановлює індексний файл за замовчуванням у index.html та вказує доменне ім’я для віртуального хоста.

Збережіть (Ctrl+O, потім Enter) та закрийте файл (Ctrl+X).

Крок 4. Увімкніть віртуальний хост

Далі вам потрібно створити символічне посилання для включення віртуального хоста:

sudo ln -s /etc/nginx/sites-available/test-website.conf /etc/nginx/sites-enabled/

Потім вам потрібно запустити тест, щоб переконатися, що ваші конфігурації та синтаксис в порядку. Виконайте команду нижче.

sudo nginx -t

Якщо з конфігурацією все гаразд, ви можете перейти до перезапуску Nginx, щоб застосувати зміни:

sudo systemctl restart nginx

Вітаємо, ви створили власний веб-сайт та налаштували віртуальний хост за допомогою Nginx. Тепер ви можете отримати доступ до свого веб-сайту, ввівши своє доменне ім’я або IP-адресу у веб-браузері.

Крок 5. Протестуйте свій сайт

Ви можете приступити до тестування свого веб-сайту, ввівши IP-адресу в браузері.

Якщо ви використовували інший номер порту (наприклад, 81), вкажіть його в IP-адресі, як показано нижче.

192.168.1.27:81

Nginx проти Apache

Nginx і Apache — два найпопулярніші веб-сервери у світі. Хоча обидва вони є однією і тією ж метою, їх відрізняють деякі ключові відмінності.

Продуктивність

Nginx відомий своєю високою продуктивністю та низьким споживанням ресурсів. Він призначений для обробки множини одночасних підключень з низьким використанням пам’яті. Apache, з іншого боку, може бути ресурсомістким і може вимагати більше пам’яті для обробки того самого обсягу трафіку.

Гнучкість

Apache – більш гнучкий веб-сервер, ніж Nginx. Він підтримує багато модулів і може бути легко налаштований для задоволення конкретних потреб. З іншого боку, Nginx має більш обмежений набір модулів і менш гнучкий у налаштуванні.

Простота використання

Зазвичай вважається, що Nginx простіше в налаштуванні та використанні, ніж Apache. Його конфігураційні файли більш прості та інтуїтивно зрозумілі, і їх можна налаштувати швидко і легко. Однак Apache може бути більш складним в установці та налаштуванні, особливо для початківців.

Порада: і Nginx, і Apache мають свої сильні і слабкі сторони. Вибір між ними залежить від конкретних потреб веб-сайту або програми, що обслуговується. Nginx — хороший вибір для високопродуктивних веб-серверів, які потребують низького споживання ресурсів, у той час як Apache є більш гнучким і може бути налаштованим для задоволення конкретних потреб.

Висновок

Nginx — чудовий вибір для високопродуктивного та надійного веб-сервера. Його легко встановити та налаштувати в Ubuntu. Завдяки своїй здатності служити веб-сервером, балансувальником навантаження, зворотним проксі-сервером та кешем HTTP, серед іншого, він дає безліч переваг.

Поділіться своєю знахідкою

Залишити відповідь

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x