Plesk кенг тарқалган хостинг панели ва кўплаб сайтлар йиллар давомида унда ишлаб келган. Бироқ сервер алмаштирилганда ёки хостинг провайдери ўзгарганда сайтни бошқа панелга, масалан ISPmanager'га кўчиришга тўғри келади. Plesk'нинг ўз захира нусха формати фақат Plesk'нинг ўзи билан тўлиқ мос ишлайди, шунинг учун бошқа панелга ўтишда сайт қисмларини алоҳида-алоҳида олиб, янги жойда қайта йиғиш керак бўлади. Бу мураккаб эмас, лекин бир нечта нозик жойни билмасангиз, почта ёки DNS ёзувларини йўқотиб қўйиш осон.
Plesk сайт маълумотларини қаерда сақлайди
Linux'даги Plesk'да ҳар бир домен /var/www/vhosts/misol.uz/ папкасида жойлашади, сайт файллари эса унинг ичидаги httpdocs папкасида туради. Субдоменлар ва қўшимча доменлар кўпинча шу папка ёнида алоҳида каталогларда бўлади. Базалар MySQL ёки MariaDB серверида, почта қутилари эса сервер ичидаги почта хизматида сақланади. Shared хостинг фойдаланувчиси одатда фақат ўз домен папкасига ва phpMyAdmin'га кира олади, сервер даражасидаги почта папкаларига эса кириш бўлмайди.
Яна бир муҳим жиҳат: Plesk Windows серверларида ҳам ишлайди. Агар сайтингиз ASP.NET ва MS SQL асосида қурилган бўлса, уни Linux'даги PHP хостингга оддий кўчириш билан ўтказиб бўлмайди, бу аллақачон сайтни қайта ишлаш масаласи. Кўчиришни бошлашдан олдин сайтингиз қайси платформада ишлашини аниқлаб олинг.
Мисол: Бухородаги хусусий мактаб сайти
Бухородаги хусусий мактабнинг Joomla асосидаги сайти Plesk хостингда жойлашган дейлик. Сайтда янгиликлар бўлими, ўқитувчилар саҳифалари ва қабул аризаси формаси бор. Домен misol.uz учун DNS ҳам Plesk серверининг ўзида юритилади, яъни доменнинг NS ёзувлари шу серверни кўрсатади. Бундан ташқари мактаб директори ва қабул бўлими @misol.uz манзилли почтадан фойдаланади. Айнан шундай ҳолатда энг кўп хато қилинади: сайтни кўчириб, NS'ни алмаштиришади ва почта тўсатдан ишламай қолади, чунки MX ва бошқа ёзувлар эски серверда қолиб кетган.
Файлларни олиш
Файлларни Plesk'нинг файл менежери орқали архивлаб юклаб олиш мумкин: httpdocs папкасини белгилаб, архив яратиш функциясидан фойдаланинг. SSH кириш берилган бўлса, терминал орқали архивлаш тезроқ:
cd /var/www/vhosts/misol.uz
tar -czf ~/maktab-fayllar.tar.gz -C httpdocs .
Агар фақат FTP бўлса, FileZilla каби дастур билан бутун httpdocs папкасини компьютерга кўчириб олинг. Минглаб майда файлларни FTP орқали тортиш секин кечади, шунинг учун имкон бўлса аввал панелда архив яратиб, кейин битта файлни юклаб олган маъқул.
Базани тўғри экспорт қилиш
Plesk'да phpMyAdmin ҳар бир база учун "Маълумотлар базалари" бўлимидан очилади. Бир ҳисобда бир нечта база бўлса, экспортни ҳар бирининг ўз phpMyAdmin ойнасидан қилинг: акс ҳолда бошқа база бўш кўриниши ёки нотўғри база экспорт қилиниши мумкин. Экспортда "Custom" режимини танлаб, жадвал ва устун номларини тескари қўштирноқ билан ўраш (backquotes) параметрини ёқинг. Бу параметрсиз order ёки key каби заҳираланган сўзлар билан номланган устунлар импортда синтаксис хатосига олиб келади.
SSH бўлса, экспорт буйруқ билан анча ишончли бажарилади:
mysqldump --single-transaction --default-character-set=utf8mb4 \
-u maktab_user -p maktab_db | gzip > ~/maktab_db.sql.gz
Экспортдан кейин файлни очиб, охирида -- Dump completed қатори борлигини текширинг. Бу қатор бўлмаса, экспорт ярим йўлда узилган бўлиши мумкин.
DNS ёзувларини олдиндан кўчириш
Агар домен DNS'и Plesk серверида юритилса, NS'ни алмаштиришдан олдин барча ёзувларни рўйхатга олинг. Plesk'да улар доменнинг "DNS созламалари" бўлимида кўринади. Энг муҳимлари қуйидагилар:
- A ва AAAA ёзувлари, жумладан
www,mailва субдоменлар. - MX ёзувлари, почта қайси серверга боришини белгилайди.
- TXT ёзувлари: SPF, DKIM, DMARC ва Google ёки Yandex каби хизматларнинг тасдиқлаш ёзувлари.
- CNAME ва SRV ёзувлари, агар ташқи хизматлар уланган бўлса.
Ёзувларни ташқаридан ҳам текшириб олиш фойдали, шунда панелда кўринмаган бирор нарса қолиб кетмайди:
dig misol.uz MX +short
dig misol.uz TXT +short
dig www.misol.uz A +short
Янги DNS'да бу ёзувларни тўлиқ қайта яратиб бўлгачгина NS'ни алмаштиринг. sayt.uz кабинетида бу иш доменнинг DNS саҳифасида бажарилади, NS серверларни алмаштириш ҳам ўша ерда.
Почтани кўчириш
Почта қутиларидаги хатларни кўчиришнинг энг қулай йўли IMAP орқали нусхалашдир. imapsync воситаси эски сервердаги қутига ва янги сервердаги қутига бир вақтда уланади ва хатларни папкалари билан бирга ўтказади. Бунинг учун ҳар бир қутининг паролини билиш керак. Парол номаълум бўлса, уни Plesk панелида қайта ўрнатиб, сўнг фойдаланувчига янгисини бериш мумкин.
imapsync --host1 eski-server.example.uz --user1 direktor@misol.uz --password1 'ESKI_PAROL' \
--host2 mail.example.uz --user2 direktor@misol.uz --password2 'YANGI_PAROL' \
--ssl1 --ssl2
Кўчиришни NS алмаштиришдан олдин бир марта, кейин эса алмаштиришдан бир-икки кун ўтиб яна бир марта бажариш тавсия этилади. Иккинчи ишга туширишда imapsync фақат янги келган хатларни ўтказади ва оралиқда эски серверга тушган хатлар йўқолмайди.
Конфигурацияни янги панелга мослаш
Joomla сайтларида configuration.php файлида база маълумотларидан ташқари вақтинчалик ва лог папкаларининг тўлиқ йўллари ҳам ёзилади. Plesk'дан кўчганда улар эски /var/www/vhosts/... йўлини кўрсатиб қолади ва администратор панелига киришда ёки файл юклашда хато чиқади:
public $host = 'localhost';
public $db = 'maktab_db';
public $user = 'maktab_user';
public $password = 'yangi-parol';
public $log_path = '/var/www/foydalanuvchi/data/www/misol.uz/administrator/logs';
public $tmp_path = '/var/www/foydalanuvchi/data/www/misol.uz/tmp';
WordPress'да эса wp-config.phpдаги база маълумотларини янгилаш одатда етарли. Plesk'нинг "Қўшимча nginx директивалари" ёки Apache созламалари майдонига қўлда ёзилган қоидалар бўлса, уларни ҳам кўчириб ёзиб олинг: улар сайт файлларида эмас, панел созламаларида сақланади ва архивга тушмайди. Қайта йўналтиришлар, кешлаш ёки хавфсизлик қоидалари кўпинча айнан шу ерда яширинган бўлади.
Якуний синов ва эски серверни ёпиш
Янги серверда сайтни компьютерингиздаги hosts файли орқали синаб кўринг, мактаб мисолида эса қабул аризаси формасини албатта тўлдириб юборинг, чунки форма хатлари айнан почта созламаларига боғлиқ. Ҳаммаси ишлагач, NS ёки A ёзувларини алмаштиринг ва DNS янги IP'ни кўрсатгач SSL сертификатини чиқаринг. Эски Plesk хостингни камида бир-икки ҳафта сақлаб туринг ва шу даврда унга тушган хатларни imapsync билан яна бир бор тортиб олинг. Агар сизда кўп домен ва почта қутиси бўлса, кўчиришни sayt.uz техник ёрдами билан олдиндан режалаштириш вақтни тежайди.