Migrare site Plesk -> cPanel
Salut,
In cele ce urmeaza voi prezenta pasii care trebuie urmati in migrarea unui domeniu/site de pe un server care are panou de control Plesk pe un server cu panou de control cPanel. Exeplul este petru un site creat in Wordpess, dar se poate adapta in functie de platforma CMS folosita deoarece pasii sunt aceasi.
1.Avand in vedere diferenta la structura fisierelor intre aceste doua panouri de control, migrarea casutelor de e-mail si a e-mailurilor nu este posibila, in consecinta, pentru a nu pierde e-mailurile, trebuie sa setati casutele de e-mail intr-un client de e-mail (Outlook, Mozilla Thunderbird, etc) pe protocolul POP3, pentru a descarca local e-mailurile iar dupa ce a fost efectata migrarea si recreate casutele de e-mail, se seteaza in acelasi client de e-mail, pe protocolul IMAP noile casute de e-mail, iar cu drag&drop se muta e-mailurile din vechile casute, acestea fiind urcate in mod automat pe server.
2.Se suspenda zona DNS a domeniului din Plesk .
3.Se creaza domeniul pe serverul nou cu panou de control cPanel.
4.Pentru a ne usura munca putem scoatem din Plesk casutele de e-mail si parolele cu script-ul :
#mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa – ne conectam la DB dupa care rulam (in loc de numedomeniu.ro introduceti numele de domeniu pentru care doriti datele) :
SELECT accounts.id, mail.mail_name, accounts.password, domains.name FROM domains LEFT JOIN mail ON domains.id = mail.dom_id LEFT JOIN accounts ON mail.account_id = accounts.id;
SELECT accounts.id, mail.mail_name, accounts.password, domains.name FROM domains LEFT JOIN mail ON domains.id = mail.dom_id LEFT JOIN accounts ON mail.account_id = accounts.id where domains.name=’numedomeniu.ro’
5. Scoatem si numele bazelor de date, userii si parolele aferente acestora :
SELECT domains.name AS domain_name, data_bases.name AS database_name, db_users.login, accounts.password FROM data_bases, db_users, domains, accounts WHERE data_bases.dom_id = domains.id AND db_users.db_id = data_bases.id AND db_users.account_id = accounts.id ORDER BY domain_name;
6.Facem dump la bazele de date:
#mysqldump –opt numedb > /root/temp/numedb.dump.sql
7.Copiem bazele de date pe noul server :
#scp -P22 numedb.dump.sql 192.168.1.1:/root (unde IP-ul 192.168.1.1 este IP-ul serverului destinatie)
8.Mergem in panoul de control cPanel unde generam bazele de date, userii si parolele (de preferat sa se seteze acelasi parole) dupa care acordam fiecarui user privilegii pe baza de date corespunzatoare.
9.Se face importul datelor in noile baze de date pe serverul cu cPanel
#mysql numedb_noua < numedb.dump.sql
10. Copiem continutul web de pe Plesk pe cPanel (varianta aleasa este RSYNC-ul dar puteti si cu SCP sau prin ftp cu MidnightCommander)
#rsync -aP –numeric-ids -e ‘ssh -p 22’ /var/www/vhosts/domeniu/httpdocs/* numeservernou:/home/domeniu/public_html
11.Setam recursiv noul owner si drepturile pentru directoare si fisiere :
in calea/home/domeniu/ rulam #chown -R user.user * . – unde user este numele userului in cPanel.
#find . -type d -exec chmod 0755 {} \;
#find . -type f -exec chmod 0644 {} \;
12.Declaram noile baze de date/useri/parole in wp-config.php (sau config-ul platformei CMS dupa caz).
13.Verificam sa nu existe cai absolute de pe vechiul server in wp-config.php
14.Daca nu exista fisierul .htaccess facem unul si adaugam regulile de rewrite default WP dupa care ii setam ownerul corespunzator.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
15.In cazul in care exista fisiere de cache le stergem.
16.Adugam in fisierul hosts site-ul sa vedem daca functioneaza :
C:\Windows\System32\drivers\etc\hosts – dechidem cu notepad rulat cu drepturi de administrator – Windows
#/etc/hosts – editabil cu editorul vi statie Unix
In cazul in care sunt alte intrebari legate de acest topic, astept comentariile voastre.
C.