Svetainės perkėlimas į kitą hostingą be prastovos vyksta viena tvarka: pirmiausia sutrumpinamas DNS TTL, tada daroma pilna kopija, svetainė paruošiama ir patikrinama naujame serveryje laikinu adresu, ir tik po to perjungiamas DNS, aktyvuojamas SSL ir sutvarkomas el. paštas. Jei šią eilę išlaikysite, lankytojai pakeitimo nepastebės, o Google pozicijos nepajudės, nes adresai lieka tie patys. Jei ją apversite ir pirma išjungsite seną hostingą, gausite kelių valandų ar dienų prastovą ir tą patį darbą stresinėmis sąlygomis.
Esu Tomas, front-end programuotojas iš Vilniaus. Per vienuolika metų ir daugiau nei 150 projektų perkėliau svetaines iš dalintų hostingų į VPS, tarp Lietuvos ir užsienio tiekėjų, iš WordPress į statinį HTML. Žemiau surašiau devynis žingsnius, kuriais vadovaujuosi kiekvieną kartą, nepriklausomai nuo svetainės dydžio.
Kada hostingo keitimas apskritai verta?
Hostingo keitimas yra darbas, kurį verta daryti dėl priežasties, ne dėl pigesnės akcijos. Tipinės priežastys, su kuriomis ateina klientai:
- Svetainė lėta, o kešavimas ir vaizdų optimizavimas nebepadeda, nes kaltas pats serveris ar jo kaimynai.
- Pasenusi PHP versija, kurios hostingas neatnaujina, ir WordPress įskiepiai nebeveikia.
- Palaikymas neatsako po kelias dienas, kai svetainė neveikia.
- Kaina po pirmųjų metų išaugo kelis kartus.
- Svetainė paveldėta, o hostingas registruotas buvusio programuotojo vardu.
Ką rinktis vietoje esamo tiekėjo, rašiau atskirai straipsnyje apie hostingą Lietuvoje. Čia svarbiau pats procesas.
9 žingsniai: svetainės perkėlimas be prastovos
1. Sumažinkite DNS TTL dieną prieš
TTL (time to live) yra laikas, kurį interneto tiekėjai ir naršyklės įsimena jūsų domeno IP adresą. Įprastai jis būna 4–24 valandos. Jei perjungsite DNS su tokiu TTL, dalis lankytojų dar parą matys seną serverį. Todėl pirmas veiksmas yra domeno valdymo skydelyje sumažinti A įrašo TTL iki 300 sekundžių ir palaukti, kol senasis laikas išeis. Tik po to pakeitimas pasklis per kelias minutes.
2. Padarykite pilną atsarginę kopiją
Kopija reiškia du dalykus: visus failus, įskaitant wp-content/uploads katalogą, ir duomenų bazės eksportą. Hostingo skydelio „backup“ mygtukas dažnai daro tik vieną iš jų. Atsisiųstą archyvą atidarykite ir patikrinkite, kad jame yra tai, ko tikėjotės. Kopija, kurios niekas neatidarė, nėra kopija.
3. Surašykite, kas dar gyvena tame hostinge
Dažniausia perkėlimo klaida yra ne techninė, o inventorizacijos. Svetainė perkelta, o po savaitės paaiškėja, kad tame pačiame serveryje buvo pašto dėžutės, antras domenas su nukreipimu, cron užduotis, kuri siųsdavo ataskaitas, arba testinė versija, kurią kažkas vis dar naudoja. Prieš pradedant surašau viską: domenus, subdomenus, pašto dėžutes, DNS įrašus, SSL sertifikatus, FTP ir duomenų bazės vartotojus, suplanuotas užduotis.
4. Perkelkite failus ir duomenų bazę į naują serverį
Naujame hostinge sukuriama tuščia svetainė, į ją įkeliami failai ir importuojama duomenų bazė. Konfigūracijos faile pakeičiami duomenų bazės pavadinimas, vartotojas ir slaptažodis. Didelėms svetainėms failus perkeliu tiesiogiai iš serverio į serverį, ne per savo kompiuterį, nes dešimties gigabaitų nuotraukų katalogas per namų internetą keliautų pusę dienos.
5. Testuokite laikinu adresu
Čia slypi visa „be prastovos“ esmė. Naują kopiją reikia pamatyti dar prieš perjungiant domeną. Tam yra du būdai: hostingo laikinas adresas arba hosts failo įrašas savo kompiuteryje, kuris domeną nukreipia į naują IP tik jums. Antras būdas geresnis, nes svetainė matoma su tikru domenu ir nereikia keisti adresų duomenų bazėje.
Ką tikrinu laikinu adresu:
- pradinis puslapis, kelios vidinės nuorodos, paieška svetainėje;
- administratoriaus prisijungimas ir įskiepių sąrašas be klaidų;
- kontaktų forma iš tikrųjų išsiunčia laišką;
- e-parduotuvėje testinis užsakymas iki apmokėjimo puslapio;
- PHP versija ir atminties limitas ne mažesni nei sename serveryje;
- nuotraukos atsidaro, o ne rodo senojo serverio adresą.
6. Sustabdykite pakeitimus senoje svetainėje
Nuo kopijos padarymo iki perjungimo praeina laikas. Jei per jį kas nors senoje svetainėje pridėjo įrašą ar klientas pateikė užsakymą, naujoje kopijoje to nebus. Todėl prieš galutinį perjungimą arba užšaldau redagavimą, arba, jei svetainė aktyvi, darau antrą, galutinę duomenų bazės kopiją ir ją importuoju iš naujo. E-parduotuvei perjungimą planuoju nakčiai ar ankstyvam rytui, kai užsakymų mažiausiai.
7. Perjunkite DNS
Domeno valdyme A įrašas pakeičiamas į naujo serverio IP. Jei TTL buvo sumažintas, per 5–15 minučių dauguma lankytojų jau mato naują serverį. Tuo metu abi kopijos veikia, todėl jokios klaidos niekas nemato. Jei keičiate ne tik serverį, bet ir adresą, čia įsijungia 301 nukreipimai, bet paprastam hostingo keitimui jų nereikia.
8. Aktyvuokite SSL ir patikrinkite el. paštą
Kai DNS rodo į naują serverį, hostingo skydelyje išduodamas nemokamas Let's Encrypt sertifikatas. Patikrinkite, kad svetainė atsidaro per https ir kad http versija nukreipia į ją. Tada paštas: jei jis buvo tame pačiame hostinge, MX įrašai turi rodyti į naują pašto serverį, o dėžutės turi būti sukurtos iš anksto. Jei paštas pas atskirą tiekėją, MX įrašų neliečiu, tik patikrinu, kad jie neatsitiktinai nepasikeitė kopijuojant DNS zoną.
9. Patikrinkite po perkėlimo ir palaukite su senuoju
Perkėlimas baigiasi ne DNS perjungimu, o patikra po jo. Search Console per kelias dienas parodo, ar atsirado 5xx klaidų ar neprieinamų puslapių. Senąjį hostingą paliekite veikiantį bent dvi savaites, geriau mėnesį. Kartais tik po savaitės paaiškėja, kad kažkoks failas ar pašto dėžutė nepersikėlė.
Ką tikrinti po perkėlimo: kontrolinis sąrašas
| Kas | Kaip patikrinti | Kada |
|---|---|---|
| Svetainė atsidaro iš naujo IP | Komanda dig arba internetinė DNS patikra rodo naują adresą | Per valandą |
| SSL galioja visai svetainei | Naršyklėje nėra įspėjimų, http nukreipia į https | Iš karto |
| Formos siunčia laiškus | Testinė užklausa pasiekia pašto dėžutę, ne spamą | Iš karto |
| El. paštas gaunamas ir siunčiamas | Laiškas iš išorės ir į išorę; SPF ir DKIM įrašai atitinka naują serverį | Per valandą |
| Greitis ne prastesnis | PageSpeed Insights palyginimas prieš ir po | Pirmą dieną |
| Search Console be klaidų | Puslapių ir Core Web Vitals ataskaitos | Po 3–7 dienų |
| Suplanuotos užduotys veikia | Automatinės kopijos, laiškai, atnaujinimai įvyko laiku | Po savaitės |
Po perkėlimo verta iš karto pasinaudoti švaresniu serveriu ir sutvarkyti kešavimą bei vaizdus. Tai aprašiau straipsnyje kaip pagreitinti WordPress svetainę.
WordPress perkėlimas: kuo jis ypatingas?
WordPress perkėlimas turi kelias savas vietas. Svetainės adresas įrašytas duomenų bazėje, todėl jei testuojate per hostingo laikiną adresą, jį reikia laikinai pakeisti ir vėliau grąžinti. Įskiepiai, kurie kešuoja puslapius, naujame serveryje gali rodyti senas versijas, todėl kešą po perkėlimo išvalau. Dalis saugumo įskiepių užrakina prisijungimą pagal IP ar serverio parašą ir po perkėlimo neįleidžia administratoriaus. Ir dar vienas niuansas: pigių hostingų „perkėlimo įskiepiai“ gerai veikia su mažomis svetainėmis, bet lūžta ties keliais gigabaitais medijos, tada failus reikia kelti rankomis.
Kaip galiu padėti
Perkeliu svetaines tarp hostingų, į naujus domenus ir iš WordPress į statinį HTML. Svetainės perkėlimo paslauga su hostingo keitimu kainuoja 250 €: pilna kopija, failai ir duomenų bazė, SSL, DNS, el. pašto patikra ir stebėjimas po perkėlimo. Domeno keitimas su 301 nukreipimais — 350 €, skubus perkėlimas, kai hostingas išjungiamas rytoj, — 50 € už valandą. Jei dar tik renkatės, kur keltis, pirmiausia perskaitykite apie domeną ir hostingą, o tada parašykite: pasakysiu, ar jūsų atvejui perkėlimas iš viso reikalingas.
Dažniausiai užduodami klausimai
Ar svetainė neveiks perkėlimo metu?
Jei naujasis serveris paruošiamas ir patikrinamas prieš perjungiant DNS, lankytojai prastovos nemato: kol DNS įrašas sklinda, veikia abi kopijos. Prastova atsiranda tik tada, kai pirma išjungiamas senas hostingas, o tik tada pradedama kelti svetainė į naują.
Kiek laiko trunka svetainės perkėlimas į kitą hostingą?
Paprasta WordPress svetainė be el. pašto serveryje perkeliama per 1–2 dienas, iš kurių didžiąją dalį užima testavimas laikinu adresu ir DNS sklidimas. E-parduotuvė su dideliu medijos katalogu, paštu tame pačiame serveryje ir integracijomis gali užimti savaitę, nes daugiau dalykų reikia patikrinti prieš perjungiant.
Ar perkeldamas hostingą prarasiu pozicijas Google?
Ne, jei adresai nesikeičia: tas pats domenas, tie patys URL, veikiantis SSL ir ta pati sitemap. Google serverio keitimo nemato kaip svetainės keitimo. Pozicijos nukenčia tik tada, kai kartu keičiasi adresai be 301 nukreipimų arba svetainė kelias dienas rodo klaidas.
Kas nutiks el. paštui perkeliant svetainę?
Jei paštas naudoja atskirą tiekėją, pavyzdžiui, Google Workspace ar Microsoft 365, jam perkėlimas įtakos neturi, nes MX įrašai lieka tie patys. Jei pašto dėžutės gyvena tame pačiame hostinge kaip svetainė, jas reikia perkelti atskirai, prieš tai nusikopijavus laiškus, arba pašto tiekėją pakeisti į nepriklausomą.
Ar reikia pirkti naują SSL sertifikatą po perkėlimo?
Beveik niekada. Dauguma hostingų nemokamai išduoda Let's Encrypt sertifikatą, kurį galima aktyvuoti dar prieš DNS perjungimą arba iš karto po jo. Mokamą sertifikatą perkelti galima, bet paprasčiau išsiimti naują nemokamą naujame serveryje.
Kiek kainuoja svetainės perkėlimas į kitą hostingą?
Hostingo keitimas su failais, duomenų baze, SSL, DNS ir patikra po perkėlimo kainuoja 250 €. Domeno keitimas kartu su 301 nukreipimais — 350 €. Skubus perkėlimas, kai senasis hostingas išjungiamas rytoj, skaičiuojamas 50 € už valandą. Daug hostingų perkėlimą tarp savo serverių siūlo nemokamai, bet patikra ir paštas tada lieka jums.