Skip to main content

Jak zainstalować serwer WWW NGINX w systemie Ubuntu 18.04

[#138] NGINX jako podstawowy serwer WWW dla usługi hostingowej - Maciej Kupiec (Kwiecień 2025)

[#138] NGINX jako podstawowy serwer WWW dla usługi hostingowej - Maciej Kupiec (Kwiecień 2025)
Anonim

NGINX to bardzo wydajny, elastyczny i lekki serwer WWW, który można łatwo zainstalować na platformie Linux. Jeśli wybrana przez ciebie dystrybucja Linuksa to Ubuntu, ten proces jest jeszcze łatwiejszy. Tutaj przeprowadzimy Cię przez proces instalacji stabilnej wersji NGINX (1.14.0) na najnowszym wydaniu LTS (Long Term Support) serwera Ubuntu Server (18.04).

Dlaczego warto zainstalować NGINX?

Być może zadajesz sobie pytanie: "Po co instalować NGINX, gdy Apache jest od lat domyślnym serwerem internetowym?" Odpowiedź jest nieco bardziej skomplikowana, niż można się było spodziewać. Aby uprościć tę odpowiedź, należy rozważyć Apache jest serwerem WWW, który wykonuje niesamowitą pracę z obsługą dużej liczby żądań na sekundę. Jednak wydajność Apache zaczyna borykać się z rosnącymi żądaniami. Oznacza to, że gdy nastąpi wzrost odwiedzin serwera Apache, czas ładowania strony może ucierpieć. Z drugiej strony, NGINX jest zoptymalizowany, aby zapewnić stałą i przewidywalną wydajność. Tak więc, nawet gdy odwiedziny odwiedzą skok, NGINX nie zawodzi. Z drugiej strony Apache jest znacznie bardziej elastyczny niż NGINX. Dzięki dużej liczbie modułów i obsłudze innych usług i serwerów Apache może (w tej chwili) robić więcej niż NGINX. Jeśli więc wydajność jest tym, czego szukasz, NGINX to twój serwer. Jeśli elastyczność znajduje się na górze listy, Apache należy rozważyć jako pierwszy.

Zatrzymywanie i wyłączanie Apache

Pierwszą rzeczą do zrobienia jest zatrzymanie i wyłączenie Apache. Jeśli Apache działa na serwerze, nie można zainstalować NGINX. Apache może pozostać zainstalowany na tym samym serwerze co NGINX, ale dopóki Apache nie zostanie zatrzymany, NGINX odmówi instalacji. Aby dowiedzieć się, czy Apache działa, wydaj polecenie:

sudo systemctl status apache2

Jeśli Apache jest wymieniony jako uruchomiony, musisz go zatrzymać i wyłączyć, aby można było zainstalować NGINX. Aby zatrzymać serwer WWW Apache, wydaj polecenie:

sudo systemctl zatrzymaj apache2

Wyłącz serwer Apache (aby nie uruchamiał się ponownie w przypadku ponownego uruchomienia serwera) za pomocą polecenia:

sudo systemctl wyłącza apache2

Instalowanie NGINX

Przy pomocy Apache'a instalacja NGINX może zostać zrealizowana za pomocą jednego polecenia:

sudo apt-get install nginx

Po zainstalowaniu uruchom i włącz NGINX za pomocą następujących poleceń:

sudo systemctl start nginxsudo systemctl włącz nginx

Serwer internetowy NGINX jest teraz zainstalowany i działa.

Przeglądanie strony powitalnej NGINX

Po zainstalowaniu NGINX możesz wskazać swoją przeglądarkę internetową na adres IP serwera hostingowego, aby zobaczyć stronę powitalną NGINX. Jeśli nie jesteś pewien swojego adresu IP serwera, wydaj polecenie:

ip a

Dane wyjściowe powyższego polecenia będą wyświetlać adres serwera.

Możliwe, że napotkasz problem podczas próby wyświetlenia domyślnej strony NGINX index.html. Problem polega na tym, że jeśli Apache został zainstalowany jako pierwszy, NGINX będzie domyślnie wyświetlał stronę Apache index.html. Aby zobaczyć stronę powitalną NGINX (index.nginx-debian.html), nazwa strony głównej Apache musi zostać zmieniona. Wróć do okna terminala, wydaj polecenie:

sudo mv /var/www/html/index.html /var/www/html/index.html.old

Wróć do przeglądarki i załaduj ponownie tę stronę. Stronę powitalną Apache należy teraz zastąpić stroną powitalną NGINX.

Jak skonfigurować stronę internetową

Po zainstalowaniu i uruchomieniu NGINX nadszedł czas na skonfigurowanie pierwszej strony internetowej. Sposób konfiguracji witryn NGINX jest bardzo podobny do Apache. Przejdźmy przez podstawy konfiguracji witryny barebones. Pierwszą rzeczą, którą musisz wiedzieć, są niezbędne katalogi zawierające pliki używane do tworzenia witryny. Te katalogi to:

  • / var / www / html - jest to katalog główny NGINX, w którym będą przechowywane wszystkie katalogi i strony.
  • / etc / nginx / sites-available - jest to katalog zawierający wszystkie pliki konfiguracyjne dla każdej z twoich stron.
  • / etc / nginx / sites-enabled - jest to katalog, który instruuje NGINX, które strony są faktycznie włączone dla serwera.

Różnica między dostępnymi witrynami i witrynami jest dwojaka:

  • Witryny dostępne są rzeczywistymi plikami dla każdej witryny, którą utworzyłeś dla serwera.
  • włączone witryny są linkami do plików w witrynach dostępnych. O ile link nie jest dostępny w witrynach, NGINX nie będzie wiedział o stronie w witrynach dostępnych.

Po wyjęciu z pudełka pojawi się jeden plik / etc / nginx / sites-available . Ten plik jest domyślna . Zamierzamy stworzyć nową (minimalną) stronę. Pierwszą rzeczą, którą należy zrobić, to utworzyć katalog (w katalogu głównym NGINX), aby pomieścić naszą stronę. Zadzwonimy na tę stronę test . W oknie terminala wpisz polecenie:

sudo mkdir / var / www / html / test

Utwórz plik index.html za pomocą polecenia:

sudo nano /var/www/html/test/index.html

Wewnątrz tego dokumentu dodaj:

HELLO LIFEWIRE!

Zapisz i zamknij plik za pomocą polecenia Ctrl-x. Nadaj katalogowi niezbędne uprawnienia za pomocą poleceń:

sudo chown www-data: www-data -R / var / www / html / testsudo chmod -R 755 / var / www / html / test

Teraz utwórz plik konfiguracyjny dla naszej nowej witryny / etc / nginx / sites-available za pomocą polecenia:

sudo nano / etc / nginx / sites-available / test

Wewnątrz tego pliku dodaj następującą treść:

serwer {

słuchaj 80;

posłuchaj ::: 80;

root / var / www / html / test;

index index.html index.htm index.nginx-debian.html;

Nazwa serwera _;

Lokalizacja / {

try_files $ uri $ uri / = 404;

}

}

Zapisz i zamknij ten plik.

Przetestuj konfigurację NGINX za pomocą polecenia:

sudo nginx -t

Test będzie wyświetlany jako pomyślny. Aby upewnić się, że NGINX może wyświetlić nowo spreparowaną stronę testową, uruchom ponownie serwer WWW za pomocą polecenia:

sudo systemctl restart nginx

Możesz teraz skierować przeglądarkę do http: // SERVER_IP / test (gdzie SERVER_IP jest adresem IP twojego serwera), aby zobaczyć nowo utworzony plik index.html wyświetlany.