Ki jan yo redireksyon NON-WWW & WWW ak Nginx

Lè ou gen yon sit entènèt oswa yon aplikasyon ki monte ak kouri Nginx, li se dezirab pou pèmèt vizitè yo jwenn aksè nan domèn nan lè l sèvi avèk tou de www ak vèsyon ki pa www nan non domèn ou. Sepandan, nan laj jodi a nan Search Engine Optimization ak itilizatè yo vle yon eksperyans Navigasyon rapid ak fasil, gen de lyen URL ka afekte eksperyans jeneral nan sit entènèt ou an. Sepandan, sa pa vle di ou ta dwe abandone youn nan fason vizitè ou yo pou jwenn aksè nan sit la. Olye de sa, mete yon senp redireksyon ka amelyore eksperyans vizitè sit entènèt ou a, ogmante rekonesans backlink pi vit, ak amelyore evalyasyon SEO.

Nan gid ki anba a, w ap aprann itilize kijan pou redireksyon yon URL www nan ki pa www, eg (www.egzanp.com) yo (egzanp.com) ak vis vèrsa ak yon redireksyon yo rele yon Redireksyon pèmanan, oswa "301 redireksyon", Sa a ka fè sou nenpòt sistèm opere lè l sèvi avèk Nginx, egzanp yo se pou blòk sèvè yo sèlman. Yo pa eksplike kijan pou yo mete sa yo oswa ki jan yo enstale Nginx.

Kondisyon

  • OS rekòmande: Nenpòt sistèm Linux ki ka kouri Nginx
  • Kont itilizatè: Yon kont itilizatè ki gen aksè sudo oswa rasin.
  • Pakè rekòmande: pli

Enstale curl Centos/Rocky Linux/Rhel/Oracle:

sudo yum install curl

Enstale curl Debian/Ubuntu/Linux Mint:

sudo apt install curl

reklam


Opsyon 1: Redireksyon NON-WWW pou WWW

Nan premye egzanp lan, ou pral ajoute kòd ki anba a pi wo a ki egziste deja ou a (www) blòk non sèvè pou redireksyon tout vizitè ki frape URL ki pa www ou a nan yon URL www sèlman.

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;
}

Remak, asire w ($request_uri) se pa retire paske sa ka lakòz pwoblèm ak tout lyen ki pa www jis redireksyon tounen nan paj lakay ou.

Yon egzanp sa a se https://example.com/random-topic. Si ($request_uri) pa ajoute, li pral tou senpleman detounen nan www.example.com olye pou yo https://www.example.com/random-topic, ki pral fristre vizitè ou yo plis fè mal klasman motè rechèch ou a ak kroleur ap resevwa. konfonn.

Opsyon 2: Redireksyon WWW pou NON-WWW

Nan dezyèm egzanp lan, ou pral ajoute kòd ki anba a pi wo a ki egziste deja ou a (ki pa www) blòk non sèvè pou redireksyon tout vizitè ki frape URL www ou a nan yon URL ki pa www sèlman.

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;
}

Jan yo note sa nan fen Opsyon 1, asire w ($request_uri) pa retire. Sa a se yon pati esansyèl.

Remake byen, asire w ke ou mete sètifika yo ak kle pou redireksyon HTTPS yo oswa ou gen pwoblèm.


reklam


Konfime Chanjman yo

Anvan ou rekòmanse egzanp Nginx ou a, li pi bon pou fè yon kouri sèk pou asire ke pa gen okenn erè nan sa ou jis ajoute. Pou teste, egzekite lòd sa a:

sudo nginx -t

Si tout bagay anfòm, ou ta dwe jwenn pwodiksyon sa a:

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

Kontinye rekòmanse sèvis Nginx ou a pou fè chanjman yo viv:

sudo systemctl restart nginx

Se sa! Ou te konplete redireksyon an. Pou teste si redireksyon an ap travay, egzekite bagay sa yo:

tès redireksyon ki pa www pou www

curl -I https://example.com

Egzanp pwodiksyon:

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/

www nan tès redireksyon ki pa www

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

Egzanp pwodiksyon:

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/

Kòmantè ak konklizyon

Nan gid la, ou te aprann kijan pou fasil epi byen vit ajoute tou de direksyon www ak non-www nan blòk sit sèvè Nginx ou a, ki pral amelyore eksperyans jeneral vizitè ou yo lè w vizite sèlman yon URL olye de de.

Jan yo eksplike sa nan kòmansman gid la, SEO ap vin pi enpòtan, motè rechèch yo toujou ap make sit entènèt yo, epi gen de URL ak kontni potansyèl kopi se yon gwo mak wouj kont sit entènèt ou a. Ajoute redireksyon sa a ka byen vit ranfòse klasman ou ak backlinks ou yo.

Leave a Comment