🔀
Хостинг

cPanel'дан ISPmanager'га кўчиш: файллар, база, почта ва DNS

14.11.2026
← Барча мақолалар

cPanel ва ISPmanager иккаласи ҳам хостинг бошқарув панели, лекин улар ички тузилиши, папкалар жойлашуви ва баъзи созламаларни сақлаш усули билан фарқ қилади. Шунинг учун cPanel'дан ISPmanager'га ўтишда "бир тугма билан кўчириш" кутиш тўғри эмас. Яхши хабар шуки, оддий сайт учун бу жараён бир-икки соатлик иш ва уни босқичма-босқич бажарсангиз, мижозларингиз узилишни сезмай ҳам қолади.

Икки панел ўртасидаги асосий фарқлар

cPanel'да сайт файллари одатда /home/foydalanuvchi/public_html папкасида туради, қўшимча доменлар эса унинг ичида ёки ёнида алоҳида папкаларда жойлашади. ISPmanager'да ҳар бир домен учун алоҳида папка яратилади ва йўл /var/www/foydalanuvchi/data/www/misol.uz кўринишида бўлади. Бу фарқ кўпинча сайт конфигурациясида ёзилган тўлиқ йўллар орқали сезилиб қолади: кеш папкаси, лог файли ёки юклаш папкаси эски йўлни кўрсатиб турган бўлса, сайт хато беради.

Базалар номланишида ҳам фарқ бор. cPanel база ва фойдаланувчи номига автоматик равишда аккаунт номини префикс сифатида қўшади, масалан klinika_wp. ISPmanager'да номни ўзингиз белгилайсиз, шунинг учун янги номни конфигурация файлига тўғри ёзиш керак. PHP созламалари ҳам бошқача бошқарилади: cPanel'да кўпинча MultiPHP INI Editor ишлатилади, ISPmanager'да эса PHP версияси ва параметрлари домен созламаларида танланади.

Мисол: Самарқанддаги клиника сайти

Тасаввур қилинг, Самарқанддаги хусусий клиниканинг сайти cPanel хостингда ишлайди. Унда WordPress асосидаги асосий сайт, онлайн навбатга ёзилиш учун кичик PHP скрипт, учта почта қутиси ва ҳар кеча эслатма SMS юборувчи cron вазифаси бор. Домен misol.uz, почта қутилари info@, qabul@ ва direktor@. Кўчиришни режалаштиришдан олдин ана шундай рўйхат тузиб олиш жуда муҳим, чунки айнан унутилган cron ёки почта қутиси кейинчалик энг кўп бош оғриғи келтиради.

1-қадам: cPanel'дан маълумотларни олиш

cPanel'нинг "Backup" бўлимида уй папкасининг тўлиқ архивини ва ҳар бир базанинг алоҳида думпини юклаб олиш мумкин. Агар SSH кириш бўлса, буни терминалда бажариш тезроқ ва ишончлироқ:

cd ~
tar -czf sayt-fayllar.tar.gz -C public_html .
mysqldump --single-transaction --default-character-set=utf8mb4 \
  -u klinika_wp -p klinika_wp > klinika_wp.sql

--single-transaction байроғи InnoDB жадвалларини сайт ишлаб турган пайтда ҳам изчил ҳолатда экспорт қилиш имконини беради. Кодлашни аниқ кўрсатиш эса ўзбекча ва русча матнлар бузилмаслигини кафолатлайди. Архивни олишдан олдин кераксиз катта файлларни, масалан эски захира нусхаларни ва кеш папкаларини тозалаб ташлаш кўчиришни сезиларли тезлаштиради.

Бундан ташқари, cPanel'даги "Cron Jobs" бўлимидан барча вазифаларни кўчириб ёзиб олинг ва "Email Accounts" бўлимидаги қутилар рўйхатини сақланг. Почта қутилари паролларини cPanel кўрсатмайди, шунинг учун янги серверда улар учун янги парол ўрнатиш ва фойдаланувчиларга хабар бериш керак бўлади.

2-қадам: ISPmanager'да муҳитни тайёрлаш

ISPmanager панелида аввал "WWW-доменлар" бўлимида misol.uz доменини қўшинг ва эски сервердаги билан бир хил PHP версиясини танланг. Версиялар фарқ қилса, эски плагин ёки скрипт янги PHP'да ишламай қолиши мумкин. Кейин "Маълумотлар базалари" бўлимида янги база ва фойдаланувчи яратинг. Почта учун "Почта доменлари" ва "Почта қутилари" бўлимларида худди шу номдаги қутиларни очинг.

sayt.uz мижозлари ISPmanager панелига алоҳида парол эслаб қолмасдан, тўғридан-тўғри кабинетдаги хостинг саҳифасидан киради.

3-қадам: файл ва базани юклаш

Архивни панелнинг файл менежери орқали домен папкасига юклаб, ўша ерда очиш мумкин. SSH бўлса, иккала сервер ўртасида тўғридан-тўғри кўчириш ҳам қулай:

cd /var/www/foydalanuvchi/data/www/misol.uz
tar -xzf ~/sayt-fayllar.tar.gz
mysql -u klinika -p klinika_db < ~/klinika_wp.sql

Катта базалар учун phpMyAdmin орқали импорт баъзан юклаш ҳажми ёки вақт чекловига дуч келади. Бундай ҳолатда думпни сиқилган ҳолда юклаб, терминал орқали импорт қилиш ёки техник ёрдамдан ёрдам сўраш мақсадга мувофиқ.

4-қадам: конфигурацияни янги муҳитга мослаш

Файллар жойига тушгач, сайт конфигурациясидаги база маълумотларини янгиланг. WordPress учун бу wp-config.php, бошқа скриптлар учун одатда config.php ёки .env файли бўлади:

define('DB_NAME', 'klinika_db');
define('DB_USER', 'klinika');
define('DB_PASSWORD', 'yangi-kuchli-parol');
define('DB_HOST', 'localhost');

Кейин эски йўлларни қидиринг. Қуйидаги буйруқ сайт файлларида /home/ билан бошланадиган қаттиқ ёзилган йўлларни топади:

grep -rn "/home/klinika" --include=*.php .

Яна бир муҳим жой .htaccess. cPanel'да Apache mod_php режимида ишлаганда php_value ва php_flag қаторлари ишлайди, лекин PHP бошқа режимда, масалан CGI ёки FPM орқали ишга туширилганда бу қаторлар 500 хатосига сабаб бўлиши мумкин. Бундай қаторларни олиб ташлаб, керакли қийматларни панелнинг PHP созламаларида белгиланг. cPanel қўшиб қўядиган AddHandler application/x-httpd-ea-php кўринишидаги қаторлар ҳам янги серверда керак эмас ва уларни ўчириш лозим.

5-қадам: cron ва почта

Cron вазифаларини ISPmanager'нинг "Режалаштирувчи" бўлимида қайта яратинг. Буйруқлардаги йўлларни янги тузилмага мослашни унутманг, акс ҳолда вазифа жимгина ишламай қолади. Клиника мисолида эслатма SMS скрипти илгари /home/klinika/public_html/cron/remind.php йўли билан чақирилган бўлса, энди у домен папкасидаги янги йўл билан ёзилади.

Почта қутиларидаги эски хатларни кўчириш учун imapsync каби воситадан фойдаланиш мумкин. У эски ва янги сервер ўртасида IMAP орқали хатларни папкалари билан бирга нусхалайди. Агар хатлар кам бўлса ва фойдаланувчилар почта дастурида ишласа, баъзан хатларни локал архивда сақлаб қўйиш ҳам етарли бўлади.

6-қадам: синов ва DNS'ни алмаштириш

DNS'ни ўзгартиришдан олдин сайтни янги серверда синаб кўринг. Бунинг учун компьютерингиздаги hosts файлига вақтинча янги сервер IP манзилини ёзинг:

203.0.113.10  misol.uz www.misol.uz

Шунда фақат сизнинг компьютерингиз сайтни янги сервердан очади, бошқалар эса эскисини кўришда давом этади. Ҳаммаси ишласа, кабинетда домен DNS ёзувларини ёки NS серверларни янгисига алмаштиринг. Алмаштиришдан бир кун олдин ёзувларнинг TTL қийматини камайтириб қўйсангиз, ўзгариш тезроқ тарқалади. Янги серверда SSL сертификатини DNS янги IP'ни кўрсата бошлагандан кейингина чиқариш мумкин, чунки Let's Encrypt домен айнан шу серверга тегишли эканини текширади.

Эски cPanel хостингни дарҳол ўчирманг. Камида бир-икки ҳафта уни сақлаб туринг: DNS тўлиқ тарқалгунча баъзи ташриф буюрувчилар ва почта серверлари ҳали ҳам эски манзилга мурожаат қилиши мумкин, унутилган файл эса айнан шу пайтда эсга тушади.

Ўхшаш мақолалар

🛠️ PHP янгилангач сайт бузилди: тез тиклаш ва сабабини топиш 🐍 aiogram ботни серверга жойлаш: virtualenv, systemd ва webhook 🖥️ Панел терминали тез узилади: сабаблари ва тўғри SSH уланиш 🔍 Хостингда жой эгаллаётган катта файлларни топиш: буйруқлар ва амалий усуллар
🌐 Тил
🇺🇿 O'zbek 🇺🇿 Ўзбек ✓ 🇷🇺 Русский 🇬🇧 English