Baza wiedzy

Zastanawiasz się, jak działają poszczególne usługi STATNET Online? Skorzystaj z naszej bazy wiedzy. Znajdziesz tu poradniki oraz odpowiedzi na najczęściej zadawane pytania naszych klientów.

VPS: jak zainstalować Nginx w systemie Debian 8

Wprowadzenie

Nginx to popularny serwer HTTP będący alternatywą dla Apache2. Może być używany jako reverse proxy, serwer e-mail lub WWW. Według badania Netcraft z lipca 2015 r. Nginx obejmuje obecnie swoim zasięgiem 14% rynku, a od 2007 r. ma tendencję wzrostową.

W tym poradniku zainstalujemy Nginx na serwerze Debian 8.

Wymagania:

– tworzymy nowy serwer VPS z systemem Debian 8.

Krok 1 – instalacja Ngnix.

W tym kroku będziemy używać wbudowanego instalatora pakietów o nazwie apt-get. Ułatwia on w znaczny sposób zarządzanie czystą instalacją.

W ramach wymagań wstępnych należy zaktualizować indeks pakietu apt z apt-get oraz aktualizujemy system do najnowszych dostępnych pakietów.

$ apt-get update
$ apt-get upgrade

W związku z tym, że będziemy instalować serwer www nginx, upewniamy się, że nie mamy zainstalowanego serwera apache.

$ apt-get remove apache* --purge

Nginx to dedykowany serwer HTTP, który skupia się na obsłudze danych mocno obciążających serwer, przy małym zużyciu pamięci. Aby go zainstalować, używamy następującego polecenia:

$ apt-get install nginx

Krok 2 – testowanie serwera.

W tym kroku sprawdzimy, czy serwer Nginx jest dostępny. W przeglądarce internetowej otwieramy http://twoj_adres_ip_serwera, zastępując swój twoj_adres_ip_serwera , adresem IP serwera. Powinniśmy zobaczyć domyślną stronę Nginx, potwierdzającą, że serwer jest uruchomiony.

Jeśli nie mamy dostępu do przeglądarki internetowej, możemy przetestować serwer z poziomu wiersza polecenia. Najlepiej przetestować go z innego systemu, aby upewnić się, że witryna jest widoczna dla świata zewnętrznego, poleceniem:

$ curl twoj_adres_ip_serwera

Powinniśmy zobaczyć poniższy output HTML:

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx on Debian!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx on Debian!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working on Debian. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a></p>

<p>
      Please use the <tt>reportbug</tt> tool to report bugs in the
      nginx package with Debian. However, check <a
      href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=nginx;repeatmerged=0">existing
      bug reports</a> before reporting a new bug.
</p>

<p><em>Thank you for using debian and nginx.</em></p>


</body>
</html>

W przypadku błędów, nie zobaczymy powyższego output’u, a zastaniemy:

curl: (52) Empty reply from server

Krok 3 – zarządzanie procesem Nginx

Teraz, gdy mamy działający serwer WWW, możemy przejść przez kilka podstawowych poleceń potrzebnych do jego zarządzaniem.

Aby zatrzymać serwer WWW, wpisujemy:

$ systemctl stop nginx

Aby uruchomić serwer WWW po jego zatrzymaniu, wpisujemy:

$ systemctl start nginx

Aby zatrzymać, a następnie ponownie uruchomić usługę, wpisujemy:

$ systemctl restart nginx

Jeśli po prostu dokonujemy zmian konfiguracyjnych, Nginx możemy przeładować, bez utraty połączeń. W tym celu możemy użyć tego polecenia:

$ systemctl reload nginx

Możemy upewnić się, że nasz serwer internetowy zostanie automatycznie zrestartowany uruchomimy go ponownie, wpisując:

$ systemctl enable nginx

Aby przetestować działanie konfiguracji, restartujemy serwer poleceniem:

$ shutdown -r now

Następnie wylogowujemy się (ponieważ serwer jest teraz ponownie uruchamiany). Po kilku minutach możemy powtórzyć krok 2, aby sprawdzić, czy serwer startuje przy ponownym uruchomieniu komputera.

Krok 4 – Rootowanie i konfiguracja serwera.

Jeśli chcemy rozpocząć obsługę własnych stron lub aplikacji przez Nginx, musimy znać lokalizacje plików konfiguracyjnych Nginx i domyślnego katalogu głównego serwera.

Domyślny root serwera.

Domyślnym katalogiem głównym serwera jest /var/www/html. Pliki umieszczone w tym katalogu będą wyświetlane na serwerze WWW. Ta lokalizacja jest określona w domyślnym pliku w konfiguracyjnym bloku serwera, dostarczanym z Nginx, który znajduje się w /etc/nginx/sites-enabled/default.

Konfiguracja bloku serwera

Każde dodatkowe bloki serwerów, znane jako hosty wirtualne, możemy dodawać, tworząc nowe pliki konfiguracyjne w katalogu /etc/nginx/sites-available. Aby uaktywnić te konfiguracje, możemy stworzyć symlink do /etc/nginx/sites-enabled, używając następującego polecenia:

$ ln -s /etc/nginx/sites-available/site /etc/nginx/sites-enabled/site

Wszystkie pliki konfiguracyjne z katalogu obsługującego witrynę, zostaną załadowane przez Nginx.

Konfiguracja globalna Nginx

Główny plik konfiguracyjny Nginx znajduje się w katalogu /etc/nginx/nginx.conf. W tym miejscu możemy zmieniać ustawienia, takie jak zmiana użytkownika, który uruchamia deamon Nginx i liczbę procesów roboczych, które pojawiają się podczas jego uruchamiania.

Podsumowanie.

Teraz, mając zainstalowany serwer internetowy, mamy wiele opcji dotyczących typu obsługiwanej przez nas zawartości oraz technologii pozwalających choćby na zwiększenie możliwości. Warto też zbadać dodatkowe opcje zabezpieczające serwer. Pamiętajmy, że jest on otwarty dla sieci, a tym samym bardzo wrażliwy.