Kako preusmjeriti NE-WWW & WWW pomoću Nginxa

Kada imate web stranicu ili aplikaciju koja je pokrenuta i pokreće Nginx, poželjno je posjetiteljima omogućiti pristup domeni koristeći i www i ne-www verzije naziva vaše domene. Međutim, u današnje doba optimizacije tražilica i korisnika koji žele brzo i jednostavno iskustvo pregledavanja, dvije URL veze mogu negativno utjecati na cjelokupno iskustvo vaše web stranice. Međutim, to ne znači da biste trebali napustiti jedan od načina na koji posjetitelji mogu pristupiti stranici. Umjesto toga, postavljanje jednostavnog preusmjeravanja može poboljšati iskustvo posjetitelja vaše web stranice, brže povećati prepoznavanje povratnih linkova i poboljšati ocjenu SEO.

U donjem vodiču naučit ćete kako preusmjeriti www URL na ne-www, npr (www.example.com) do (primjer.com) i obrnuto s preusmjeravanjem se naziva a Trajno preusmjeravanje, ili “301 preusmjeravanja”, To se može učiniti na bilo kojem operativnom sustavu koji koristi Nginx, primjeri su samo za blokove poslužitelja. Ne objašnjavaju kako ih postaviti ili kako instalirati Nginx.

Preduvjeti

  • Preporučeni OS: Bilo koji Linux sustav koji može pokrenuti Nginx
  • Korisnički račun: Korisnički račun sa sudo ili root pristupom.
  • Preporučeni paketi: sklupčati

Instalirajte curl Centos/Rocky Linux/Rhel/Oracle:

sudo yum install curl

Instalirajte curl Debian/Ubuntu/Linux Mint:

sudo apt install curl

Oglas


Opcija 1: preusmjeravanje NON-WWW na WWW

U prvom primjeru ćete dodati donji kod iznad postojećeg (www) blokiranje naziva poslužitelja za preusmjeravanje svih posjetitelja koji pogode vaš URL koji nije www URL samo na www URL.

HTTP (80)

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

HTTPS (443)

server {
    listen                         443 ssl http2;
    listen                          [::]:443 ssl http2;
    server_name             .example.com;

    # SSL
    ssl_certificate                 /path/to/cert.pem;
    ssl_certificate_key         /path/to/key.pem;
    ssl_trusted_certificate    /path/to/cert.crt;
    return                             301 https://www.example.com$request_uri;
}

Napomena, uvjerite se ($request_uri) nije uklonjen jer to može uzrokovati probleme sa svim ne-www poveznicama koje samo preusmjeravaju natrag na vašu početnu stranicu.

Primjer za to je https://example.com/random-topic. Ako ($request_uri) nije dodan, jednostavno će se preusmjeriti na www.example.com umjesto na https://www.example.com/random-topic, što će frustrirati vaše posjetitelje i povrijediti rangiranje vaše tražilice s indeksiranjem zbunjeni.

Opcija 2: preusmjeravanje WWW na NON-WWW

U drugom primjeru ćete dodati donji kod iznad postojećeg (ne-www) blokiranje naziva poslužitelja za preusmjeravanje svih posjetitelja koji pogode vaš www URL samo na URL koji nije www.

HTTP (80)

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

HTTPS (443)

server {
    listen                  443 ssl http2;
    listen                  [::]:443 ssl http2;
    server_name     www.example.com;

    # SSL
    ssl_certificate                /path/to/cert.pem;
    ssl_certificate_key        /path/to/key.pem;
    ssl_trusted_certificate   /path/to/cert.crt;
    return                             301 https://example.com$request_uri;
}

Kao što je navedeno na kraju 1. opcije, uvjerite se ($request_uri) nije uklonjena. Ovo je bitan dio.

Napomena, svakako postavite certifikate i ključ za HTTPS preusmjeravanja ili imate problema.


Oglas


Potvrdite promjene

Prije nego što ponovno pokrenete instancu Nginxa, najbolje je izvršiti suho pokretanje kako biste osigurali da nema pogrešaka u onome što ste upravo dodali. Za testiranje, izvršite sljedeću naredbu:

sudo nginx -t

Ako je sve u redu, trebali biste dobiti sljedeći izlaz:

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

Nastavite s ponovnim pokretanjem usluge Nginx da bi promjene bile aktivne:

sudo systemctl restart nginx

To je to! Dovršili ste preusmjeravanje. Da biste provjerili funkcionira li preusmjeravanje, izvršite sljedeće:

test preusmjeravanja bez www na www

curl -I https://example.com

Primjer rezultata:

HTTP/1.1 301 Moved Permanently
 Server: nginx/1.21.1 (Ubuntu)
 Date: Mon, 14 July 2021 18:20:19 GMT
 Content-Type: text/html
 Content-Length: 193
 Connection: keep-alive
 Location: http://www.example.com/

Test preusmjeravanja s www na ne-www

curl -I https://www.example.com

Primjer rezultata:

HTTP/1.1 301 Moved Permanently
 Server: nginx/1.21.1 (Ubuntu)
 Date: Mon, 14 July 2021 18:21:33 GMT
 Content-Type: text/html
 Content-Length: 193
 Connection: keep-alive
 Location: http://example.com/

Komentari i zaključak

U vodiču ste naučili kako jednostavno i brzo dodati smjer www i non-www u blok web-mjesta vašeg Nginx poslužitelja, što će poboljšati cjelokupno iskustvo vaših posjetitelja posjetom samo jednom URL-u umjesto dva.

Kao što je objašnjeno na početku vodiča, SEO postaje sve važniji, tražilice neprestano obilježavaju web stranice, a dva URL-a s potencijalnim dupliciranim sadržajem velika je crvena oznaka na vašoj web stranici. Dodavanje ovog preusmjeravanja može brzo povećati vaš rang i vaše povratne veze.

Pretplati me
Obavijesti o
0 Komentari
Umetne povratne informacije
Pogledajte sve komentare
0
Volio bih vaše misli, molim vas komentirajte.x