You are on page 1of 8

Kako​ ​migrirati​ ​svoj​ ​sajt​ ​na​ ​HTTPS

Google​ ​je​ ​pre​ ​desetak​ ​dana​ ​poslao​ ​cirkularni​ ​mail​ ​svim​ ​vlasnicima​ ​sajta​ ​u​ ​kojem​ ​stoji
obaveštenje​ ​da​ ​će,​ ​počev​ ​od​ ​oktobra​ ​2017,​ ​Google​ ​Chrome​ ​praktično​ ​početi​ ​da​ ​“vrišti”​ ​ako​ ​na
sajtu​ ​imate​ ​bilo​ ​kakvo​ ​tekstualno​ ​polje​ ​a​ ​sajt​ ​se​ ​učitava​ ​preko​ ​HTTP​ ​protokola.​ ​Savetuje​ ​se,
naravno,​ ​da​ ​sajt​ ​prebacite​ ​na​ ​HTTPS​ ​protokol.

U​ ​ovom​ ​članku​ ​ćemo​ ​se​ ​pozabaviti​ ​time​ ​kako​ ​da​ ​to​ ​uradite.

Ovaj​ ​članak​ ​će​ ​opisati​ ​detaljno​ ​dva​ ​postupka:


● Instalacija​ ​besplatnog​ ​LetsEncrypt​ ​SSL​ ​sertifikata​ ​putem​ ​VestaCP​ ​hosting​ ​panela
● Migracija​ ​sajta​ ​sa​ ​HTTP​ ​na​ ​HTTPS.

Članak​ ​je​ ​prvenstveno​ ​namenjen​ ​korisnicima​ ​VestaCP​ ​hosting​ ​panela,​ ​ali​ ​ukoliko​ ​imate​ ​neki
drugi​ ​hosting​ ​panel​ ​na​ ​kome​ ​već​ ​znate​ ​kako​ ​da​ ​instalirate​ ​SSL,​ ​onda​ ​možete​ ​preskočiti​ ​prvi​ ​deo
i​ ​preći​ ​na​ ​drugi​ ​deo​ ​članka,​ ​a​ ​to​ ​je​ ​migracija​ ​sajta​ ​na​ ​HTTPS.

Ukoliko​ ​niste​ ​sigurni​ ​da​ ​li​ ​uopšte​ ​imate​ ​hosting​ ​panel,​ ​kontaktirajte​ ​vašu​ ​hosting​ ​tehničku
podršku,​ ​oni​ ​će​ ​Vam​ ​instalirati​ ​SSL,​ ​a​ ​zatim​ ​isto​ ​pređite​ ​na​ ​drugi​ ​deo​ ​članka.

Instalacija​ ​besplatnog​ ​LetsEncrypt​ ​SSL​ ​sertifikata​ ​putem


VestaCP​ ​hosting​ ​panela
Kada​ ​se​ ​ulogujete​ ​na​ ​svoj​ ​VestaCP​ ​panel,​ ​u​ ​gornjem​ ​meniju​ ​kliknite​ ​na​ W
​ EB​:
Stanite​ ​mišem​ ​iznad​ ​svog​ ​domena​ ​i​ ​kliknite​ ​IZMENA​​ ​(Edit):

Otvoriće​ ​se​ ​forma​ ​za​ ​izmenu​ ​domena.


Skrolujte​ ​do​ ​dela​ ​gde​ ​piše​ ​Proxy​ ​podrška​​ ​(Proxy​ ​support).
Ukoliko​ ​u​ ​padajućem​ ​meniju​ ​vidite​ ​force-https​,​ ​izaberite​ ​ga.
(ukoliko​ ​te​ ​stavke​ ​nema​ ​u​ ​padajućem​ ​meniju,​ ​onda​ ​ostavite​ d
​ efault​ ​vrednost,​ ​a​ ​ukoliko​ ​ste
administrator​ ​servera,​ ​ili​ ​ukoliko​ ​možete​ ​da​ ​kontaktirate​ ​administratora,​ ​evo​ ​uputstva​ ​kako​ ​da
instalirate​ ​force-https​ ​proxy​ ​opciju)
Skrolujte​ ​zatim​ ​do​ ​dela​ ​gde​ ​piše​ ​SSL​ ​Podrška​​ ​(SSL​ ​Support),​ ​štiklirajte​ ​ga,​ ​i​ ​zatim​ ​štiklirajte
opciju​ ​LetsEncrypt​ ​podrška​:

Na​ ​kraju,​ ​skrolujte​ ​do​ ​dna​ ​stranice​ ​i​ ​samo​ ​kliknite​ S


​ ačuvaj​​ ​(Save):

Ukoliko​ ​sve​ ​prođe​ ​kako​ ​treba,​ ​VestaCP​ ​će​ ​vas​ ​obavestiti​ ​da​ ​su​ ​izmene​ ​uspešno​ ​sačuvane.
To​ ​znači​ ​da​ ​je​ ​SSL​ ​sertifikat​ ​uspešno​ ​instaliran,​ ​i​ ​da​ ​sada​ ​možemo​ ​preći​ ​na​ ​migraciju​ ​sajta​ ​na
HTTPS.

Migracija​ ​sajta​ ​sa​ ​HTTP​ ​na​ ​HTTPS


Ono​ ​što​ ​u​ ​ovom​ ​koraku​ ​treba​ ​da​ ​uradimo​ ​je​ ​da:
● U​ ​celoj​ ​MySQL​ ​bazi​ ​izmenimo​ ​adresu​ ​sajta​ ​iz​ ​http://mojdomen​ ​u​ ​http​s​://mojdomen
● U​ ​fajlovima​ ​izmenimo​ ​to​ ​isto​ ​(u​ ​većini​ ​slučajeva​ ​ovo​ ​neće​ ​biti​ ​potrebno)
● Za​ ​slučaj​ ​da​ ​nemamo​ ​VestaCP,​ ​ili​ ​za​ ​slučaj​ ​da​ ​nismo​ ​imali​ ​force-https​ ​opciju​ ​u​ ​hosting
panelu,​ ​forsiramo​ ​https​ ​putem​ ​izmene​ ​.htaccess​ ​fajla
Krenimo​ ​redom.

Izmena​ ​adrese​ ​sajta​ ​u​ ​MySQL​ ​bazi

Skoro​ ​svaki​ ​CMS​ ​drži​ ​u​ ​bazi​ ​adresu​ ​sajta,​ ​iz​ ​raznoraznih​ ​razloga.​ ​Potrebno​ ​je​ ​dakle​ ​promeniti​ ​tu
adresu,​ ​i​ ​reći​ ​sajtu​ ​“više​ ​nisi​ ​na​ ​http,​ ​sad​ ​si​ ​na​ ​https”.

U​ ​WordPressu​ ​to​ ​možete​ ​učiniti​ ​u​ ​wp-admin​ ​->​ ​Settings​ ​->​ ​General​​ ​(izmenite​ ​http​ ​u​ ​https​ ​u
poljima​ ​gde​ ​stoji​ ​adresa​ ​Vašeg​ ​sajta),​ ​ali​ ​to​ ​često​ ​to​ ​nije​ ​dovoljno,​ ​jer​ ​su​ ​WordPress,​ ​tema​ ​ ​i
pluginovi​ ​zapisali​ ​adresu​ ​sajta​ ​(i​ ​mnoštvo​ ​linkova​ ​ka​ ​raznim​ ​stvarima​ ​na​ ​Vašem​ ​sajtu)​ ​na​ ​puno
mesta​ ​u​ ​bazi.

Stoga​ ​je​ ​najpametnije​ ​izmeniti​ ​sve​ ​linkove​ ​u​ ​bazi​ ​jednim​ ​potezom.
Za​ ​to​ ​će​ ​nam​ ​poslužiti​​ ​Database​ ​Search​ ​and​ ​Replace​ ​Script​ ​in​ ​PHP​​ ​skripta.
Popunite​ ​formular​ ​na​ ​sajtu​ ​i​ ​preuzmite​ ​skriptu.
Raspakujte​ ​.zip,​ ​i​ ​folder​ ​Search-Replace-DB-master​​ ​uploadujte​ ​u​ ​public_html​​ ​folder​ ​na
Vašem​ ​sajtu,​ ​tako​ ​da​ ​dobijete​ ​otprilike​ ​ovako​ ​poređane​ ​foldere​ ​na​ ​Vašem​ ​FTP-u:

Sada​ ​pristupite​ ​tom​ ​folderu​ ​iz​ ​browsera,​ ​prosto​ ​odite​ ​na


http://mojdomen.com/Search-Replace-DB-master/
(ukoliko​ ​se​ ​slučajno​ ​desi​ ​da​ ​Vaš​ ​browser​ ​ispiše​ ​da​ ​ste​ ​upali​ ​u​ ​redirection​ ​loop,​ ​vratite​ ​se​ ​u
VestaCP​ ​i​ ​privremeno​ ​isključite​ ​force-https,​ ​odradite​ ​ovaj​ ​korak​ ​do​ ​kraja,​ ​a​ ​zatim​ ​vratite​ ​ponovo
force-https)
Dakle,​ ​kada​ ​budete​ ​otišli​ ​na​ ​http://mojdomen.com/Search-Replace-DB-master/​​ ​videćete
otprilike​ ​ovo​ ​(samo​ ​što​ ​prva​ ​dva​ ​polja​ ​neće​ ​biti​ ​popunjena):

U​ ​prvom​ ​polju,​ ​dakle,​ ​treba​ ​da​ ​unesete​ ​adresu​ ​Vašeg​ ​sajta.​ ​Obratite​ ​pažnju​ ​ovde,​ ​možda​ ​je​ ​Vaš
sajt​ ​na​ ​www.​​ ​poddomenu,​ ​u​ ​tom​ ​slučaju​ ​unesite​ ​http://​www​.mojdomen​ ​(najlakši​ ​način​ ​da
proverite​ ​da​ ​li​ ​je​ ​sajt​ ​na​ ​www.​ ​poddomenu​ ​je​ ​da​ ​uđete​ ​na​ ​Vaš​ ​sajt,​ ​kliknete​ ​na​ ​neku​ ​podstranicu
i​ ​pogledate​ ​u​ ​address​ ​polju​ ​da​ ​li​ ​vidite​ ​www.​)
U​ ​drugom​ ​polju​ ​unosite​ ​identično​ ​kao​ ​u​ ​prvom,​ ​samo​ ​dodate​ ​slovo​ s ​ ​ ​iza​ ​http,​ ​tako​ ​da​ ​piše
http​s​://

Ukoliko​ ​koristite​ ​WordPress,​ ​login​ ​podaci​ ​za​ ​bazu​ ​će​ ​već​ ​biti​ ​popunjeni​ ​(skripta​ ​će​ ​ih​ ​pročitati​ ​iz
wp-config.php),​ ​u​ ​suprotnom​ ​morate​ ​uneti​ ​ime​ ​baze,​ ​username​ ​i​ ​password​ ​za​ ​bazu.

Na​ ​kraju​ ​kliknite​ ​na​ ​live​ ​run​​ ​dugme.

Skripta​ ​će​ ​u​ ​nekoliko​ ​narednih​ ​sekundi​ ​u​ ​celoj​ ​bazi​ ​izmeniti​ ​http://mojdomen​ ​u
http​s​://mojdomen.
U​ ​retkim​ ​slučajevima,​ ​kada​ ​je​ ​baza​ ​prevelika,​ ​ova​ ​skripta​ ​neće​ ​uspeti​ ​da​ ​izvrši​ ​replace​ ​pre​ ​nego
što​ ​se​ ​desi​ ​PHP​ ​time-out​ ​–​ ​u​ ​tom​ ​slučaju​ ​će​ ​Vam​ ​skripta​ ​javiti​ ​da​ ​AJAX​ ​upit​ ​nije​ ​uspeo.​ ​Ako​ ​se
to​ ​desi,​ ​obratite​ ​se​ ​tehničkoj​ ​podršci,​ ​i​ ​recite​ ​im​ ​da​ ​preko​ ​SSH-a​ ​izvrše​ ​komandu:
php​ ​/home/putanja_do_sajta/Search-Replace-DB-master/srdb.cli.php​ ​-h​ ​localhost​ ​-n
IMEBAZE​ ​-u​ ​MYSQLUSER​ ​-p​ ​MYSQLPASS​ ​-s​ ​"http://mojdomen"​ ​-r​ ​"https://mojdomen"
(naravno,​ ​izmenite​ ​u​ ​ovoj​ ​komandi​ ​putanju​ ​do​ ​sajta,​ ​IMEBAZE,​ ​itd…)

Kada​ ​skripta​ ​završi​ ​posao,​ ​OBAVEZNO​​ ​obršite​ ​iz​ ​FTP-a​ ​folder​ ​Search-Replace-DB-master​​ ​(u
protivnom​ ​će​ ​neko​ ​drugi​ ​pristupiti​ ​ovoj​ ​skripti​ ​i​ ​hakovaće​ ​Vam​ ​sajt)
Time​ ​smo​ ​u​ ​celoj​ ​bazi​ ​izmenili​ ​adresu​ ​sajta.
Ukoliko​ ​na​ ​WordPress-u​ ​koristite​ ​neke​ ​pluginove​ ​za​ ​caching​ ​(poput​ ​W3​ ​Total​ ​Cache),​ ​otvorite
Setting​ ​tog​ ​plugina​ ​i​ ​kliknite​ ​na​ ​dugme​ ​“Clear/empty​ ​all​ ​caches”.

Izmena​ ​adrese​ ​sajta​ ​u​ ​fajlovima


Ponekad,​ ​mada​ ​vrlo​ ​retko,​ ​programeri​ ​i​ ​dizajneri​ ​unose​ ​adresu​ ​sajta​ ​u​ ​templejtovima.​ ​Neki
CMS-ovi​ ​drže​ ​adresu​ ​sajta​ ​u​ ​config.php​​ ​fajlovima.
U​ ​velikoj​ ​većini​ ​slučajeva​ ​ovo​ ​neće​ ​biti​ ​slučaj​ ​kod​ ​Vas,​ ​ali​ ​postoje​ ​izuzeci,​ ​kao​ ​što​ ​smo
napomenuli.

Da​ ​biste​ ​proverili​ ​da​ ​li​ ​morate​ ​neki​ ​fajl​ ​da​ ​izmenite,​ ​učitajte​ ​sada​ ​Vaš​ ​sajt​ ​preko​ ​https://​ ​protokola
(prosto​ ​iz​ ​browsera​ ​otvorite​ ​https://mojdomen.com/​​ ​).
Ako​ ​Vaš​ ​sajt​ ​uredno​ ​pokazuje​ ​zeleni​ ​katančić​ ​ispred​ ​adrese​ ​Vašeg​ ​sajta​ ​–​ ​onda​ ​vrlo​ ​verovatno
ne​ ​morate​ ​nijedan​ ​fajl​ ​da​ ​menjate.
Ukoliko​ ​pak​ ​umesto​ ​zelenog​ ​katančića​ ​ugledate​ ​katančić​ ​sa​ ​žutim​ ​znakom​ ​upozorenja,
verovatno​ ​se​ ​neke​ ​slike,​ ​CSS​ ​ili​ ​javascript​ ​fajlovi​ ​učitavaju​ ​i​ ​dalje​ ​sa​ ​http​ ​umesto​ ​sa​ ​https.

Ovo​ ​ne​ ​mora​ ​nužno​ ​da​ ​znači​ ​da​ ​su​ ​ti​ ​fajlovi​ ​sa​ ​Vašeg​ ​sajta,​ ​ponekad​ ​koristimo​ ​resurse​ ​i​ ​sa​ ​tuđih
sajtova​ ​–​ ​ali​ ​je​ ​putanja​ ​do​ ​njih​ ​(URL)​ ​svakako​ ​upisan​ ​NEGDE​ ​na​ ​Vašem​ ​sajtu​ ​–​ ​ili​ ​u​ ​bazi​ ​ili​ ​u
fajlovima.

Da​ ​biste​ ​videli​ ​šta​ ​se​ ​to​ ​tačno​ ​učitava​ ​sa​ ​http,​ ​pritisnite​ ​na​ ​tastaturi​ ​F12,​ ​kliknite​ ​na​ C
​ onsole​,​ ​i
videćete​ ​tačno​ ​šta​ ​se​ ​to​ ​učitava​ ​sa​ ​http.

Ti​ ​linkovi​ ​(koje​ ​treba​ ​da​ ​prebacite​ ​na​ ​https)​ ​su​ ​verovatno​ ​u​ ​templejtu,​ ​ALI​,​ ​postoji​ ​šansa​ ​da​ ​su​ ​i
u​ ​bazi,​ ​pa​ ​ćete​ ​možda​ ​da​ ​se​ ​vratite​ ​na​ ​prethodni​ ​korak​ ​i​ ​da​ ​u​ ​bazi​ ​replace-ujete​ ​http://nekisajt​ ​u
http​s​://nekisajt

Ako​ ​pak​ ​ustanovite​ ​da​ ​ti​ ​linkovi​ ​nisu​ ​u​ ​bazi,​ ​onda​ ​su​ ​sigurno​ ​u​ ​nekom​ ​fajlu.

Nema​ ​univerzalnog​ ​načina​ ​kako​ ​da​ ​nađete​ ​taj​ ​fajl.

Sve​ ​što​ ​treba​ ​da​ ​uradite​ ​je​ ​da​ ​pronađete​ ​fajlove​ ​koji​ ​sadrži​ ​http​ ​link,​ ​otvorite​ ​te​ ​fajlove​ ​iz
tekstualnog​ ​editora,​ ​i​ ​izmenite​ ​http://​ ​u​ ​http​s​://

Najpre​ ​proverite​ ​template,​ ​često​ ​su​ ​tu​ ​statički​ ​uneti​ ​linkovi​ ​do​ ​slika​ ​ili​ ​CSS/JS​ ​fajlova.

U​ ​najgorem​ ​slučaju,​ ​ako​ ​ne​ ​možete​ ​da​ ​nađete​ ​te​ ​fajlove,​ ​skinite​ ​ceo​ ​sajt​ ​preko​ ​FTP-a,​ ​pa​ ​uz
pomoć​ ​Total​ ​Commandera​ ​odite​ ​na​ ​Search,​ ​pretražite​ ​*​ ​fajlove,​ ​i​ ​u​ ​“Find​ ​text”​ ​polju​ ​unesite​ ​taj
nesretni​ ​http​ ​link.
Ukoliko​ ​ste​ ​administrator​ ​servera​ ​ili​ ​imate​ ​SSH​ ​pristup​ ​hostingu,​ ​možete​ ​sledećom​ ​komandom
da​ ​uradite​ ​search​ ​i​ ​replace:
find​ ​/home/putanja_do_sajta/​ ​-type​ ​f​ ​-exec​ ​sed​ ​-i
's#http://nekidomen#https://nekidomen#g'​ ​{}​ ​\;

U​ ​najgorem​ ​slučaju,​ ​ako​ ​ste​ ​već​ ​proverili​ ​da​ ​taj​ ​nesretni​ ​link​ ​nije​ ​u​ ​bazi,​ ​i​ ​ne​ ​uspevate​ ​da​ ​locirate
fajl​ ​koji​ ​sadrži​ ​taj​ ​link​ ​–​ ​zamolite​ ​tehničku​ ​podršku​ ​da​ ​izvrši​ ​komandu​ ​koju​ ​smo​ ​napisali​ ​u
prethodnoj​ ​rečenici.

Forsiranje​ ​https​ ​putem​ ​izmene​ ​.htaccess​ ​fajla


Za​ ​slučaj​ ​da​ ​nemamo​ ​VestaCP​ ​hosting​ ​panel,​ ​ili​ ​za​ ​slučaj​ ​da​ ​nismo​ ​imali​ f​ orce-https​​ ​opciju​ ​u
hosting​ ​panelu,​ ​ili​ ​za​ ​slučaj​ ​da​ ​nemamo​ ​uopšte​ ​hosting​ ​panel,​ ​https​ ​forsiranje​ ​možemo​ ​obaviti​ ​i
putem​ ​izmene​ ​.htaccess​​ ​fajla.

Preko​ ​FTP-a​ ​otvorite​ ​.htaccess​​ ​fajl​ ​i​ ​na​ ​samom​ ​početku​ ​fajla,​ ​dakle​ ​u​ ​prvoj​ ​liniji​ ​fajla,​ ​dodajte
sledeće:

RewriteEngine​ ​on
RewriteCond​ ​%{HTTPS}​ ​off
RewriteCond​ ​%{HTTP_USER_AGENT}​ ​!(Windows\​ ​NT\​ ​5.1|Windows\​ ​NT\​ ​5.2)​ ​[NC]
RewriteRule​ ​^​ ​https://%{HTTP_HOST}%{REQUEST_URI}​ ​[L,R=301]

Ovo​ ​će​ ​sve​ ​http​ ​upite​ ​da​ ​preusmerava​ ​na​ ​https.


Izuzetak​ ​su​ ​samo​ ​Windows​ ​XP​ ​korisnici,​ ​čiji​ ​se​ ​browseri​ ​baš​ ​i​ ​ne​ ​snalaze​ ​dobro​ ​sa​ ​SSL-om,​ ​pa
njih​ ​puštamo​ ​da​ ​učitaju​ ​sajt​ ​preko​ ​http​ ​protokola.

Ako​ ​je​ ​sajt​ ​kojim​ ​slučajem​ ​iza​ ​CloudFlare


Ako​ ​je​ ​sajt​ ​iza​ ​CloudFlare,​ ​ulogujte​ ​se​ ​na​ ​svoj​ ​CloudFlare​ ​nalog,​ ​izaberite​ ​svoj​ ​domen,​ ​u
gornjem​ ​meniju​ ​kliknite​ ​na​ ​Crypto​,​ ​i​ ​u​ ​SSL​ ​odeljku​ ​izaberite​ ​“​Full​“.
Ako​ ​Vaš​ ​domen​ ​nije​ ​na​ ​Vašem​ ​CloudFlare​ ​nalogu,​ ​zamolite​ ​onog​ ​na​ ​čijem​ ​je​ ​nalogu​ ​da​ ​uradi
ovo.

To​ ​bi​ ​bilo​ ​to


Dap,​ ​programerski​ ​lebac​ ​nije​ ​lako​ ​zaraditi​ ​:)
Ukoliko​ ​negde​ ​zapnete,​ ​ili​ ​prosto​ ​smatrate​ ​da​ ​je​ ​ovo​ ​previše​ ​komplikovano​ ​za​ ​Vas​ ​–
kontaktirajte​ ​tehničku​ ​podršku​ ​i​ ​pitajte​ ​ih​ ​da​ ​ovo​ ​odrade​ ​umesto​ ​Vas.
Pošto​ ​ovo​ ​nije​ ​mali​ ​niti​ ​jednostavan​ ​posao,​ ​verovatno​ ​će​ ​Vam​ ​hosting​ ​provajder​ ​naplatiti​ ​uslugu
migracije​ ​sajta​ ​–​ ​pod​ ​uslovom​ ​da​ ​uopšte​ ​hoće​ ​time​ ​da​ ​se​ ​bave.

You might also like