Konfiguracja serwera WWW Nginx
ServBay oferuje wygodny sposób zarządzania i konfiguracji wbudowanego pakietu serwera WWW Nginx. Dzięki intuicyjnemu graficznemu interfejsowi użytkownika ServBay możesz łatwo dostosować kluczowe ustawienia Nginx do różnych potrzeb Twoich lokalnych projektów deweloperskich.
Dostęp do konfiguracji Nginx
- Otwórz aplikację ServBay.
- W lewym pasku nawigacyjnym kliknij
Serwer WWW
. - Wybierz zakładkę
Nginx
.
Pojawi się panel konfiguracyjny Nginx, jak pokazano poniżej:
Opis głównych opcji konfiguracyjnych
Poniżej znajdują się szczegółowe wyjaśnienia poszczególnych parametrów w panelu konfiguracji Nginx:
Podstawowe ustawienia sieciowe
- HTTP Port: Port protokołu HTTP nasłuchiwany przez Nginx, domyślnie
80
. - HTTPS Port: Port protokołu HTTPS nasłuchiwany przez Nginx, domyślnie
443
. - Worker Connections: Maksymalna liczba jednoczesnych połączeń obsługiwanych przez każdy proces roboczy Nginx (worker process). Wartość ta wpływa na zdolność do obsługi żądań jednocześnie.
10240
to względnie wysoka wartość, odpowiednia w scenariuszach z dużą liczbą połączeń.
Wydajność i ograniczenia
- Client Max Body Size: Maksymalny dozwolony rozmiar treści w żądaniu klienta (np. maksymalny rozmiar pliku do przesłania).
2048m
oznacza limit żądania do 2GB. - KeepAlive Timeout: Czas (w sekundach), przez jaki połączenie Keep-Alive między klientem a serwerem pozostaje aktywne.
65
sekund oznacza, że jeśli klient nie wyśle nowego żądania w tym czasie, serwer zamknie połączenie. - TCP Nodelay: Włącza lub wyłącza opcję
TCP_NODELAY
. Po włączeniu (On) zmniejsza opóźnienia przy wysyłaniu małych pakietów danych, zalecane w środowiskach o wysokim opóźnieniu lub gdy wymagana jest szybka komunikacja.
Wersja protokołu HTTP
- HTTP/2: Włączenie lub wyłączenie wsparcia dla protokołu HTTP/2. HTTP/2 zwiększa wydajność dzięki technikom takim jak multipleksowanie czy kompresja nagłówków. Zalecane jest włączenie.
- HTTP/3: Włączenie lub wyłączenie wsparcia dla protokołu HTTP/3 (QUIC) – nowej generacji protokołu internetowego opartego na UDP, zapewniającego jeszcze lepszą wydajność i niezawodność. Jeśli Twoja wersja ServBay obsługuje tę funkcję, możesz ją aktywować w razie potrzeby.
Ustawienia FastCGI (dla backendów takich jak PHP)
- FastCGI Connect Timeout: Czas oczekiwania Nginx na nawiązanie połączenia z serwerem FastCGI (np. PHP-FPM), w sekundach.
- FastCGI Send Timeout: Limit czasu wysyłania żądania do serwera FastCGI przez Nginx, w sekundach.
- FastCGI Read Timeout: Limit czasu oczekiwania Nginx na odpowiedź z serwera FastCGI, w sekundach.
Te ustawienia timeoutu są szczególnie ważne przy obsłudze skryptów PHP o dłuższym czasie wykonywania – dostosuj je do swoich potrzeb, by zapobiec przedwczesnemu przerywaniu żądań.
Kompresja Gzip
- Gzip: Włącza lub wyłącza kompresję Gzip. Po aktywacji Nginx kompresuje odpowiedź przed jej wysłaniem do klienta, co redukuje ilość przesyłanych danych i przyspiesza ładowanie stron. Zdecydowanie zalecamy włączenie.
- Gzip Comp Level: Poziom kompresji Gzip, od
1
(najszybszy, najmniejsza kompresja) do9
(najwolniejszy, największa kompresja). Zazwyczaj1
lub2
to dobre wyważenie między szybkością a stopniem kompresji. - Gzip Types: Określa typy treści (MIME types), które mają być kompresowane przez Gzip. Domyślnie obejmuje popularne typy tekstowe, CSS, JavaScript, XML i RSS. Możesz w razie potrzeby modyfikować tę listę.
Ustawienia SSL/TLS (dla HTTPS)
- SSL Protocols: Definiuje dozwolone wersje protokołów SSL/TLS.
TLSv1.2 TLSv1.3
to obecnie rekomendowane i bezpieczne ustawienia – starsze, niezalecane protokoły (np. SSLv3, TLSv1.0, TLSv1.1) są wyłączone. - SSL Prefer Server Ciphers: Włączenie (On) powoduje, że podczas uzgadniania SSL/TLS serwer wybiera preferowane przez siebie algorytmy szyfrowania zamiast akceptować propozycję klienta. Zaleca się włączenie ze względów bezpieczeństwa.
- SSL Ciphers: Określa listę szyfrów dopuszczonych do użycia przez serwer. Użycie nowoczesnych, silnych algorytmów szyfrowania ma kluczowe znaczenie dla bezpieczeństwa HTTPS. ServBay oferuje zoptymalizowaną domyślną listę.
Inne ustawienia
- Server Tokens: Kontroluje to, czy Nginx pokazuje swoją wersję w nagłówkach odpowiedzi
Server
i na stronach błędów. Przy ustawieniuOn
widoczny jest dokładny numer wersji,Off
ukrywa wersję i wyświetla jedynienginx
, co jest bezpieczniejsze. - Index: Lista domyślnych nazw plików (np.
index.html index.htm index.php
), których Nginx szuka w katalogu na żądanie URL wskazującego na katalog. Serwer najpierw sprawdza, czy istniejeindex.html
, jeśli nie – sprawdza następne pliki z listy.
Zapisywanie i resetowanie ustawień
- Reset: Naciśnięcie tego przycisku przywraca domyślne ustawienia Nginx proponowane przez ServBay.
- Save: Naciśnięcie tego przycisku zapisuje wszelkie zmiany w konfiguracji Nginx. Po zapisaniu ServBay zwykle automatycznie stosuje te zmiany. Jeśli serwer Nginx jest aktualnie uruchomiony, może być konieczne jego krótkie ponowne uruchomienie, by zmiany weszły w życie.
Ważne wskazówki
- Zmiany dokonujesz w globalnej konfiguracji Nginx (w sekcji
http
plikunginx.conf
). Ustawienia dotyczące konkretnych stron (Server Blocków lub wirtualnych hostów) – jakserver_name
,root
, regułylocation
itp. – zazwyczaj konfiguruje się podczas dodawania lub edycji pozycji w sekcjiStrony internetowe
(Websites). - Jeśli widzisz komunikat „Service Nginx is not enabled” na dole panelu konfiguracji, oznacza to, że serwis Nginx nie jest obecnie uruchomiony. Nadal możesz edytować i zapisywać konfigurację, ale zmiany zostaną zastosowane dopiero przy następnym uruchomieniu usługi. Start Nginx jest możliwy z głównego panelu ServBay lub z menu
Pakiety
(Packages).
Podsumowanie
ServBay upraszcza proces konfiguracji serwera WWW Nginx, pozwalając deweloperom wygodnie dostosować kluczowe parametry przez graficzny interfejs. Zrozumienie i odpowiednie ustawienie tych opcji umożliwia optymalizację wydajności, bezpieczeństwa i funkcji Nginx, dzięki czemu lepiej spełni on potrzeby Twojego lokalnego środowiska developerskiego.