Szinte minden weboldal tulajdonos szembesült már azzal a helyzettel, hogy az oldalát költöztetnie kell. A tárhelyszolgáltatók egyre többet ajánlanak egyre kevesebb pénzért, a belépő szintű virtuális szerverek ára pedig mindössze néhány száz forint havonta, így gyakran megesik, hogy engedünk a csábításnak és át kell költöztetnünk a weboldalunkat az új (olcsóbb, gyorsabb, megbízhatóbb) tárhelyre. A régi HTML korszak idején ez a folyamat kimerült annyiban, hogy mindent fájlt lementettünk a régi tárhelyről, majd feltöltöttük az újra, manapság azonban ez ennél egy kicsit bonyolultabb. Mint ahogy szinte minden CMS, úgy a WordPress is adatbázisban tárolja az információkat, ezért a fájlrendszer lementése mellett szükségünk van a MySQL adatbázisunk archiválására is.
WordPress oldalunk másik szerverre költöztetésének lépései:
1, A teljes oldal lementése a saját gépünkre jelenlegi szerverről. A teljes mentés magába foglalja a komplett fájlrendszert és a MySQL adatbázist is. Megtehetjük mindezt kézzel is, azonban sokkal gyorsabb, ha egy bővítményt hívunk segítségül, például a BackWPup-ot! A linkre kattintva megnyílik egy korábbi írásom, amelyik részletesen taglalja a biztonsági mentés elkészítésének pontos lépéseit. Ha mégis a kézi módszer mellett döntünk, akkor mentsünk le minden fájlt FTP-ről (vagy tömörítsük be a fájlrendszert a tárhely webes felületén keresztül (például cPanel)) és exportáljuk az adatbázisunkat PHPMyAdmin segítségével. Ha rendelkezünk cPanellel, akkor a teljes kézi mentés is mindössze néhány percet vesz igénybe. Amennyiben nincs PHPMyAdmin hozzáférésünk úgy a legegyszerűbb módszer az adatbázis mentésére a BackWPup, de számtalan más alternatíva is létezik direkte csak adatbázis archiválására. Nem WordPress bővítmény ugyan, de engem már sokszor segített ki a MySQLDumper nevű kis script. Segítségével bármilyen adatbázist tudunk importálni/exportálni, ehhez elég csak az adatbázis hozzáféréseit tudni.
2, Ha a BackWPup-ot használtuk, akkor tömörítsük ki a letöltött mentésünket egy tetszőleges mappába, majd csatlakozzunk fel az új tárhelyünkre FTP-n keresztül és az töltsük fel az összes kitömörített fájlt. Kézi módszer esetén is ugyanez a teendő, tehát a lényeg az, hogy minden lementett fájlt töltsünk fel az új tárhelyünk megfelelő mappájába (ez általában public_html, web vagy htdocs néven szerepel). A weboldalunk nagyságától és a szerver távolságától függően ez a folyamat hosszabb ideig is eltarthat. cPanel megléte esetén használhatjuk a fájlkezelőt és meggyorsíthatjuk a folyamatot, ha a tömörített állományt töltjük fel, majd a szerveren tömörítjük ki.
3, Hozzunk létre egy adatbázist az új szerveren. Ha a tárhelyszolgáltató nem hozott létre előre elkészített adatbázist, akkor ránk hárul ez a feladat. Az első lépés a MySQL felhasználó létrehozása, ehhez meg kell adnunk egy jelszót is. Jegyezzük fel mindkettőt, mert szükségünk lesz rájuk rövidesen. Ha kész a felhasználó, akkor hozzunk létre egy adatbázist és rendeljük hozzá az imént létrehozott felhasználónkhoz. Ne felejtsük el engedélyezni közben az összes jogosultságot.
cPanel esetén itt mindent be kell pipálnunk a mentés előtt:
4, Nyissuk meg a PHPMyAdmint, majd importáljuk az előző szerverről származó adatbázis mentésünket az újonnan létrehozott adatbázisba. Ehhez a bal oldali listában az adatbázis nevére kell kattintani, majd felül az importálás gombot kell kiválasztani. Ezután nincs más hátra mint kitallózni a mentést és elindítani az importálást. A BackWPup alapértelmezetten a WordPress fájlok közé helyezi el a tömörített vagy tömörítetlen adatbázis mentést, tehát az archívum kicsomagolása után innen tudjuk kitallózni. Kézi mentés esetén értelemszerűen ott keressük, ahova a böngészőnk a letöltött fájlokat helyezi. Várjuk meg míg lefut az importálás, ha nincs hibaüzenet, akkor mehetünk tovább.
5, Ezután még nem vagyunk készen, ha jelen állapotban nyitnánk meg a domainünket, akkor csak egy adatbázis hibára utaló figyelmeztetést látnánk mégpedig azért, mert az adatbázis beállításait tartalmazó wp-config.php fájl még a régi adatbázisnevet/felhasználónevet/jelszót tartalmazza, az új szerveren pedig ezeket megváltoztattuk. Nyissuk hát meg szerkesztésre a wp-config.php fájlt és módosítsuk a következő sorokat:
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'uj_adatbasiznev'); /** MySQL database username */ define('DB_USER', 'uj_adatbazis_felhasznalonev'); /** MySQL database password */ define('DB_PASSWORD', 'uj_adatbazis_jelszo'); /** MySQL hostname */ define('DB_HOST', 'localhost');
Figyeljünk a formátum megtartására, tehát ne töröljük az aposztrófokat, mindössze az uj_adatbazisnev, uj_adatbazis_felhasznalonev és uj_adatbazis_jelszo részeket cseréljük ki a korábban létrehozott új adatbázis adataival. A “localhost”-ot csak abban az esetben kell cserélnünk, ha az adatbázis szerver és a webszerver két különböző gépen fut, de ez ritkán fordul elő és ilyen esetben ezt mindig ki is emeli a tárhelyszolgáltató. Ha készen vagyunk, akkor mentsük a változtatásokat és írjuk felül a régi verziót az új wp-config.php-vel. Ezután kész is vagyunk, töltsük újra a domaint a böngészőben és ha semmit se rontottunk el, akkor a weboldal hiba nélkül jelenik majd meg. Immáron az új szerverről.
WordPress költöztetése domain csere esetén
1, Biztonsági mentés. A lépések teljesen megegyeznek a fentiekkel
2, Fájlok feltöltése az új tárhelyre. Szintén megegyeznek a lépések
3, Adatbázis létrehozása az új szerveren. Ismét elég követni a fenti leírást
4, Itt történik a varázslat, az adatbázis importálása előtt (vagy után) ugyanis ki kell cserélnünk a régi domain URL-jeit (linkjeit) az újakra. Ha ezt a lépést elmulasztjuk, akkor vagy teljesen szét fog esni az oldalunk az új domain alatt vagy csak a kezdőlapunk fog működni és az összes többi menüpont/link a régi domainre fog mutatni. Lényeg a lényeg, mindenképp meg kell ejteni a cserét. Erre is vannak automatizált megoldások, például a következő kis webes eszköz: [link] Használata nagyon egyszerű, meg kell adnunk a régi domaint és az újat, majd az adatbázis mentésünk kitallózása és a biztonsági kód megadása után már tölthetjük is le az új domaint tartalmazó adatbázist. Sajnos vannak hátrányai is, maximum 5 MB méretű, SQL kiterjesztésű mentést tölthetünk csak fel, ez pedig sokaknak kevés lehet. Ilyen esetben szoktam használni az Interconnectit search & replace eszközét. Ez egy PHP alapú script, amely lényegében ugyanazt és ugyanúgy végzi el, mint a korábban linkelt weboldal azzal a különbséggel, hogy ez a saját szerverünkön fut és meglévő adatbázisban végzi el a cserét, tehát ha emellett döntünk, akkor először importálni kell az adatbázisunkat a fenti útmutató szerint, majd felmásolni a kis PHP segédeszközt és kitölteni a megfelelő adatokat (régi domain, új domain, stb.) A “Dry run” csak tesztüzemben indítja a folyamatot, a “Live run” gombra kattintva hajtja végre az éles cserét az adatbázisban, ezután jöhet a következő lépés.
5, A wp-config.php fájl módosítása. Kövessük a fenti leírást
Megjegyzés:
- Ha egy mód van rá óvakodjunk az automatizált kézi domain cserétől (például az SQL exportunkat lokálisan megnyitva, Notepad++ segítségével). Az úgynevezett “szérializált” adattömbökben található linkek cseréjét csak a fentebb bemutatott eszközök tudják végrehajtani, ezért hiába is próbálnánk, nem fogunk sikerrel járni kézi módszerek esetén. Ilyenkor fordul elő az, hogy a költözés után elvesznek a sablonunk beállításai, bizonyos dolgok eltűnnek, alapra állnak vissza, a tulajdonos pedig csak vakarja a fejét, hiszen szerinte mindent jól csinált, az oldal azonban mégsem úgy néz ki, ahogy a korábbi domain alatt.