Konfiguracja przekierowań z Nginx na VPS

Przekierowania są kluczowe dla zarządzania ruchem na Twojej stronie hostowanej na VPS, zapewniając, że użytkownicy trafiają na odpowiednie adresy URL, jednocześnie poprawiając SEO i bezpieczeństwo. Ten przewodnik upraszcza konfigurację przekierowań Nginx dla przekierowań stałych (301), tymczasowych (302), HTTP do HTTPS, www/non-www oraz przypadków specyficznych dla ścieżek. Dzięki praktycznym przykładom i wskazówkom, skutecznie opanujesz przekierowania Nginx.

Wymagania wstępne

  • VPS z zainstalowanym Nginx

  • Dostęp root lub sudo

  • Plik konfiguracyjny Twojej strony (zazwyczaj w /etc/nginx/sites-available/ lub /etc/nginx/conf.d/)

 1. Przekierowanie stałe (301)

Użyj tego, gdy adres URL lub domena zmieniły się na stałe.

✅ Przykład: Przekierowanie ze starej domeny na nową domenę

server {
listen 80;
server_name olddomain.com www.olddomain.com;
return 301 https://newdomain.com$request_uri;
}

🔐 Wskazówka: Zawsze przekierowuj na HTTPS, gdy to możliwe.

2. Przekierowanie tymczasowe (302)

Użyj tego do tymczasowego przekierowania (np. podczas konserwacji).

server {
listen 80;
server_name olddomain.com www.olddomain.com;
return 301 https://newdomain.com$request_uri;
}

 3. Przekierowanie HTTP do HTTPS

To jest wysoce zalecane dla SEO i bezpieczeństwa.

server {
listen 80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}

Następnie skonfiguruj swój blok serwera HTTPS osobno:

server {
listen 443 ssl;
server_name example.com;
# SSL config here
}

 4. Przekierowanie www na non-www (lub odwrotnie)

Wybierz jedną preferowaną wersję dla spójności i SEO.

Z www na non-www:

server {
listen 80;
server_name www.example.com;
return 301 $scheme://example.com$request_uri;
}

Lub z non-www na www:

server {
listen 80;
server_name example.com;
return 301 $scheme://www.example.com$request_uri;
}

 5. Przekierowanie konkretnej ścieżki

Przykład: Przekierowanie /blog na /articles:

location = /blog {
return 301 /articles;
}

Lub z pełnym adresem URL:

location = /blog {
return 301 https://example.com/articles;
}

Gdzie umieścić te dyrektywy

Wszystkie powyższe dyrektywy powinny być umieszczone w odpowiednim bloku serwera w pliku konfiguracyjnym Twojej strony:

/etc/nginx/sites-available/example.com

Następnie utwórz dowiązanie symboliczne do sites-enabled, jeśli to konieczne:

ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Po zaktualizowaniu konfiguracji

Zawsze testuj swoją konfigurację Nginx przed ponownym załadowaniem:

sudo nginx -t

Jeśli nie ma błędów:

sudo systemctl reload nginx

Bonus: Przekierowanie wszystkich błędów 404 na stronę główną

error_page 404 =301 /;

Umieść to wewnątrz swojego bloku serwera, aby obsłużyć uszkodzone linki w sposób elegancki.

Nginx to nie tylko serwer WWW o wysokiej wydajności — to także potężne narzędzie do kontrolowania ruchu i doświadczeń użytkowników poprzez inteligentne przekierowania. Dzięki kilku liniom konfiguracji możesz wymusić HTTPS, prowadzić użytkowników do odpowiednich adresów URL i optymalizować swoją stronę pod kątem SEO i bezpieczeństwa.

Dodatkowe wskazówki

  • Przyjazne dla SEO: Używaj przekierowań 301, aby zachować pozycje w wyszukiwarkach.

  • Konfiguracja SSL: Upewnij się, że Twój certyfikat SSL jest ważny przed przekierowaniami HTTPS (użyj Certbota dla Let’s Encrypt).

  • Testuj przekierowania: Użyj https://www.redirect-checker.org, aby zweryfikować, czy nie ma pętli lub łańcuchów przekierowań.

  • Logowanie: Włącz logi dostępu (access_log /var/log/nginx/access.log;), aby monitorować zachowanie przekierowań.

Podsumowanie

Nginx sprawia, że zarządzanie przekierowaniami na Twoim VPS jest proste i potężne, poprawiając doświadczenia użytkowników, bezpieczeństwo i SEO. Konfigurując przekierowania 301, 302, HTTPS lub specyficzne dla ścieżek oraz testując za pomocą podanych przykładów, możesz zapewnić płynny przepływ ruchu. Dzięki niezawodnemu hostingu VPS AvaHost i tym wskazówkom, Twoja strona będzie bezpieczna, dostępna i zoptymalizowana pod kątem wzrostu.