Android

Jak skonfigurować bloki serwera Nginx na Centos 7

Установка ModSecurity в NGINX на CentOS 7

Установка ModSecurity в NGINX на CentOS 7

Spisu treści:

Anonim

Bloki serwerów Nginx pozwalają na uruchamianie więcej niż jednej witryny na jednym komputerze. Jest to niezwykle przydatne, ponieważ dla każdej witryny można określić katalog główny dokumentu witryny (katalog zawierający pliki witryny), utworzyć osobną politykę bezpieczeństwa, używać różnych certyfikatów SSL i wiele więcej.

W tym samouczku wyjaśnimy, jak skonfigurować bloki serwera Nginx w CentOS 7.

Wymagania wstępne

Przed kontynuowaniem tego samouczka upewnij się, że zostały spełnione następujące wymagania wstępne:

  • Niech nazwa domeny wskazuje adres IP twojego publicznego serwera. W tym samouczku wykorzystamy example.com Czy Nginx został zainstalowany w systemie CentOS. Zalogowany jako użytkownik z uprawnieniami sudo.
W niektórych dokumentach zobaczysz, że Server Blocks są nazywane Virtual host . Wirtualny host to termin Apache.

Utwórz strukturę katalogów

Katalog główny to katalog, w którym pliki witryny dla nazwy domeny są przechowywane i podawane w odpowiedzi na żądania. Możemy ustawić katalog główny dokumentu w dowolnym miejscu, które chcemy, ale w tym przewodniku użyjemy następującej struktury katalogów:

/var/www/ ├── example.com │ └── public_html ├── example2.com │ └── public_html ├── example3.com │ └── public_html

Zasadniczo tworzymy osobny katalog dla każdej domeny, którą chcemy hostować na naszym serwerze w katalogu /var/www . W tym katalogu utworzymy katalog public_html który będzie katalogiem głównym dokumentu domeny i będziemy przechowywać pliki strony internetowej domeny.

Zacznijmy od utworzenia katalogu głównego dla naszej domeny example.com :

sudo mkdir -p /var/www/example.com/public_html

Do celów testowych utworzymy plik index.html w katalogu głównym dokumentu domeny.

Otwórz edytor tekstu i utwórz plik demonstracyjny index.html :

sudo nano /var/www/example.com/public_html/index.html

Skopiuj i wklej następujący kod do pliku:

/var/www/example.com/public_html/index.html

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

W tym przewodniku uruchamiamy polecenia jako użytkownik sudo, a nowo utworzone pliki i katalogi są własnością użytkownika root.

Aby uniknąć problemów z uprawnieniami, możemy zmienić własność katalogu głównego dokumentu domeny na użytkownika Nginx ( nginx ):

sudo chown -R nginx: /var/www/example.com

Utwórz blok serwera

Pliki konfiguracji bloku serwera Nginx muszą kończyć się na .conf i są przechowywane w katalogu /etc/nginx/conf.d .

Otwórz wybrany edytor i utwórz plik konfiguracji bloku serwera, na example.com .

sudo nano /etc/nginx/conf.d/example.com.conf Możesz nazwać plik konfiguracyjny, jak chcesz, ale zwykle najlepiej jest użyć nazwy domeny.

Skopiuj i wklej następujący kod do pliku:

/etc/nginx/conf.d/example.com.conf

server { listen 80; listen:80; root /var/www/example.com/public_html; index index.html; server_name example.com www.example.com; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location / { try_files $uri $uri/ =404; } }

Zapisz plik i sprawdź poprawność składni konfiguracji Nginx:

sudo nginx -t

Jeśli nie ma błędów, dane wyjściowe będą wyglądać następująco:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Uruchom ponownie usługę Nginx, aby zmiany odniosły skutek:

sudo systemctl restart nginx

Na koniec, aby sprawdzić, czy blok serwera działa zgodnie z oczekiwaniami, otwórz http://example.com w wybranej przeglądarce, a zobaczysz coś takiego:

Wniosek

Nauczyłeś się, jak utworzyć konfigurację bloku serwera Nginx do obsługi wielu domen na jednym serwerze CentOS. Możesz powtórzyć kroki opisane powyżej i utworzyć dodatkowe bloki serwerów dla wszystkich swoich domen.

Zabezpiecz Nginx za pomocą Let's Encrypt na CentOS 7

nginx centos

Ten post jest częścią serii install-lemp-stack-on-centos-7.

Inne posty z tej serii:

• Jak zainstalować Nginx na CentOS 7 • Zabezpiecz Nginx za pomocą Let's Encrypt na CentOS 7 • Zainstaluj MariaDB na CentOS 7 • Zainstaluj PHP 7 na CentOS 7 • Jak skonfigurować bloki serwera Nginx na CentOS 7