Modul 4 · 4.1
https i dobro preusmjeravanje
Modul 4: Brzina, mobilni uređaji i https · Vrijeme čitanja: 11 min
Cilj učenja: Nakon ove lekcije moći ćete objasniti zašto je https važan za tražilice i posjetitelje, navesti razliku između trajnog i privremenog preusmjeravanja te provjeriti završavaju li sve varijante Vaše adrese u jednom koraku na istoj https stranici.
Ključni pojmovi: https, certifikat, preusmjeravanje (redirect), 301 i 308 (trajno), 302 i 307 (privremeno), lanac preusmjeravanja, željena adresa, s www ili bez www, HSTS, miješani sadržaj
Četiri adrese za jednu početnu stranicu
Kada u adresnu traku upišete naziv web-stranice, Vaš preglednik može završiti na četiri mjesta:
| Varijanta | Primjer |
|---|---|
| http bez www | http://example.com/ |
| http s www | http://www.example.com/ |
| https bez www | https://example.com/ |
| https s www | https://www.example.com/ |
Za Vas je to jedna stranica. Za tražilicu su to četiri različite adrese. Ako sve četiri prikazuju istu stranicu, Google mora sam odabrati koja je „prava” adresa. Google to naziva kanonskom adresom (lekcija 3.5 o tome govori detaljnije). Google preporučuje da sami odaberete jednu adresu kao željenu adresu i ostale varijante preusmjerite na nju. Tada nema dvojbe, a poveznice na bilo koju varijantu računaju se za istu stranicu.
Bloemenatelier Lotte odabire https://www.example.com/. Ostale tri varijante preusmjeravaju na nju. Za tražilice nije važno odaberete li adresu s www ili bez njega. Važno je da napravite jedan izbor i svugdje ga se držite: u izborniku, u karti web-stranice, u canonicalu i u profilu tvrtke.
Zašto https
https znači da je veza između preglednika i poslužitelja šifrirana pomoću certifikata. Nitko usput ne može čitati niti mijenjati sadržaj stranice, primjerice na javnoj Wi-Fi mreži.
Za tražilice https je važan na dva načina:
- Kao signal. Google je 2014. objavio da je https signal za rangiranje, ali ga je tada nazvao „vrlo slabim signalom” koji ima manju težinu od dobrog sadržaja. U dokumentaciji o doživljaju stranice https se navodi kao jedno od pitanja koja si trebate postaviti („isporučuju li se Vaše stranice sigurno?”). Nemojte ga, dakle, precjenjivati: sam https neće Vas dovesti na vrh.
- Za posjetitelje. Preglednici uz stranicu na http prikazuju „Nije sigurno”, osobito kod obrasca. Posjetitelj koji to vidi brže odustaje. To ćete primijetiti u posjećenosti, a ne u nekom pravilu rangiranja.
Valjan certifikat danas se može besplatno dobiti putem Let's Encrypta. Kod većine pružatelja hostinga, pa tako i kod WebOké, on se automatski zatražuje i obnavlja. Pazite da certifikat pokriva oba naziva: bez www i s njim. Ako pokriva samo example.com, adresa https://www.example.com/ javlja pogrešku certifikata, i to prije nego što se preusmjeravanje uopće može dogoditi.
Trajno ili privremeno preusmjeravanje
Preusmjeravanje (redirect) je odgovor poslužitelja: „ova se stranica nalazi negdje drugdje”. To se događa pomoću troznamenkastog statusnog koda koji počinje s 3, uz zaglavlje Location s novom adresom.
| Kod | Značenje | Što Google s time radi |
|---|---|---|
| 301 | Trajno premješteno | Snažan signal da je odredište kanonska adresa |
| 308 | Trajno premješteno (metoda ostaje ista) | Isto kao 301 |
| 302 | Privremeno pronađeno | Nema signala; stara adresa često ostaje u rezultatima |
| 307 | Privremeno (metoda ostaje ista) | Isto kao 302 |
Prema Google Search Centralu, indeksiranje koristi trajno preusmjeravanje kao signal da odredište treba postati kanonsko. Kod privremenog preusmjeravanja to se ne događa: stara adresa obično ostaje u rezultatima. Prijelaz s http na https i izbor s www ili bez www trajne su situacije. Zato koristite 301 ili 308.
Preusmjeravanje možete i sami vidjeti. U terminalu:
$ curl -sI http://example.com/
HTTP/1.1 301 Moved Permanently
Location: https://www.example.com/Ili u pregledniku: otvorite alate za razvojne programere (F12), karticu Mreža (Network), uključite opciju koja čuva zapisnik pri učitavanju nove stranice i učitajte http adresu. Tada ćete vidjeti svaki korak s njegovim kodom.
Lanci preusmjeravanja
Lanac preusmjeravanja je preusmjeravanje na adresu koja i sama dalje preusmjerava. Čest primjer:
http://example.com/ 301 → https://example.com/
https://example.com/ 301 → https://www.example.com/
https://www.example.com/ 200To funkcionira, ali pri svakom prvom posjetu zahtijeva dodatnu razmjenu s poslužiteljem. web.dev navodi preusmjeravanja kao jedan od uzroka sporog prvog odgovora poslužitelja (lekcija 4.3): svaki se korak zbraja, a lanci još i više. Bolje je da svaka varijanta u jednom koraku završi na željenoj adresi:
http://example.com/ 301 → https://www.example.com/
http://www.example.com/ 301 → https://www.example.com/
https://example.com/ 301 → https://www.example.com/
https://www.example.com/ 200Kod stare http adrese s drugim nazivom to ne uspijeva uvijek u jednom koraku, jer poslužitelj uz neke postavke najprije preusmjerava na https istog naziva, a tek onda na drugi naziv. Dva koraka su tada prihvatljiva; tri ili više razlog su da provjerite postavke. Petlja (A preusmjerava na B, B ponovno na A) uvijek je pogreška: stranica se tada uopće ne otvara.
HSTS: preglednik to pamti
HSTS (HTTP Strict Transport Security, RFC 6797) je zaglavlje koje poslužitelj šalje putem https:
Strict-Transport-Security: max-age=31536000Preglednik koji ga je jednom vidio nakon toga za tu stranicu sam odmah ide na https, bez prethodnog pokušaja preko http. Time se štedi prvo preusmjeravanje i štiti od prisluškivanja. web.dev također navodi HSTS kao način da se izbjegne preusmjeravanje s http na https. Za tražilice HSTS nije signal; za Vaše posjetitelje je poboljšanje. Uključite ga tek kada https ispravno radi na svim nazivima, jer ga preglednik pamti onoliko dugo koliko navodi max-age. Tečaj Veilig online (Sigurnost na internetu) o tome govori detaljnije.
Miješani sadržaj
Https stranica koja sliku, skriptu ili stilsku datoteku učitava preko http:// ima miješani sadržaj (mixed content). Preglednici blokiraju nesigurne skripte i stilske datoteke ili prikazuju upozorenje. Nakon prelaska na https to se često vidi kod starih slika u tekstovima ili kod teme s fiksnim adresama. U izvornom kodu potražite src="http:// i href="http:// te ih zamijenite s https ili relativnom adresom.
U praksi: postavljanje preusmjeravanja na https
Kod WebOké hosting paketa preusmjeravanje na https uključujete u DirectAdminu u postavkama domene (prekidač „Force SSL with https redirect”), a na istoj stranici pod „Force redirect” birate radite li s www ili bez njega. Preusmjeravanje postavite na jednom mjestu: dva pravila koja svako rade nešto drugo (primjerice u upravljačkoj ploči i u dodatku) lako stvore petlju. Stranica izrađena pomoću AI Buildera pri objavi dobiva certifikat i vlastitu adresu. U WordPressu pod Postavke, General u polja WordPress adresa (URL) i Adresa web-stranice (URL) upišite https:// i odabrani naziv; samo preusmjeravanje postavljate na poslužitelju. Kod drugih pružatelja i alata za izradu web-stranica postupak je sličan, samo se gumbi drukčije zovu.
Ako to želite napraviti putem .htaccess (Apache ili LiteSpeed), ovo sve varijante u jednom koraku preusmjerava na https://www.example.com:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^ https://www.example.com%{REQUEST_URI} [R=301,L]Nakon toga uvijek provjerite sve četiri varijante, i to s putanjom iza adrese (http://example.com/contact): putanja mora ostati sačuvana, a ne skočiti na početnu stranicu.
Sažetak
- Odaberite jednu željenu adresu (https, s www ili bez njega) i ostale varijante preusmjerite na nju.
- Za trajna preusmjeravanja koristite 301 ili 308; 302 i 307 su privremeni i Googleu ne daju signal o kanonskoj adresi.
- Neka svaka varijanta u jednom koraku, najviše dva, završi na željenoj adresi; lanci oduzimaju vrijeme, a petlje ruše stranicu.
- https je prema Googleu slab signal za rangiranje; za posjetitelje je ponajprije pitanje povjerenja. Certifikat mora pokrivati oba naziva.
- HSTS navodi preglednik da sam ide na https; miješani sadržaj uklonite nakon prelaska.
Kviz
Zadatak
Zadatak A4.1: Preusmjerava li se sve u jednom koraku na https? Upišite naziv svoje domene (bez www). Program isprobava sve četiri varijante (http i https, s www i bez njega), prati svako preusmjeravanje korak po korak i provjerava certifikat za oba naziva. Za svaku varijantu vidjet ćete lanac sa statusnim kodovima, završavaju li sve na istoj https adresi te postoji li HSTS zaglavlje. Nemate vlastitu stranicu? Koristite rijksoverheid.nl.
Dodatno štivo
Koraci u ovim člancima vrijede za WebOké upravljačke ploče; kod drugih pružatelja postupak je sličan.
- DirectAdmin priručnik 6.4: Posjetitelje uvijek usmjerite na https
- DirectAdmin priručnik 4.3: Postavke domene: SSL, PHP, www i private_html
- DirectAdmin priručnik 6.3: Certifikat za www, poddomene i wildcard
- Obavezno preusmjeravanje posjetitelja na https
- Besplatni DNS tečaj 3.4: www, preusmjeravanje i što DNS ne radi
- Google Search Central, Redirects and Google Search: https://developers.google.com/search/docs/crawling-indexing/301-redirects
- Google Search Central Blog, HTTPS as a ranking signal (2014): https://developers.google.com/search/blog/2014/08/https-as-ranking-signal
- RFC 6797 (HSTS): https://www.rfc-editor.org/rfc/rfc6797
