هاست فعلی کند است، پشتیبانیاش پاسخ نمیدهد یا قرارداد آن رو به پایان است و باید سایت را جابهجا کنید. نگرانی اصلی مدیران قطعی سایت است؛ اما در عمل، مشکلات بزرگتر معمولاً جای دیگری پیدا میشوند: ایمیلهایی که روی همان هاست قدیمی بودند، فرم تماسی که دیگر ایمیل نمیفرستد، یا گواهی SSL که روی سرور جدید صادر نشده است. با برنامهریزی، انتقال سایت را میشود طوری انجام داد که کاربران اصلاً متوجه آن نشوند.
قدم اول: فهرستبرداری پیش از هر کاری
پیش از شروع، بدانید دقیقاً چه چیزی را جابهجا میکنید:
- فایلهای سایت و دیتابیس یا دیتابیسها
- دامنههای افزوده و زیردامنهها روی همان حساب
- صندوقهای ایمیل، فورواردرها و فیلترها، اگر ایمیل هم روی همین هاست است
- کارهای زمانبندیشده (Cron Jobs)، تنظیمات خاص PHP و قوانین
.htaccess - رکوردهای فعلی DNS، بهخصوص A، MX و TXT
اگر ایمیل شرکت روی هاست قدیمی است، انتقال ایمیل را جدا برنامهریزی کنید. جابهجا کردن NS دامنه بدون توجه به رکوردهای MX، رایجترین دلیل گم شدن ایمیلها در زمان انتقال سایت است.
قدم دوم: کاهش TTL
یکی دو روز پیش از انتقال، TTL رکوردهای A مربوط به سایت را به عددی کوچک، مثلاً 300 ثانیه، برسانید. اینطور وقتی رکورد را به IP جدید تغییر میدهید، بیشتر کاربران ظرف چند دقیقه به سرور جدید میرسند، نه چند ساعت بعد.
قدم سوم: کپی کامل روی هاست جدید
از سایت بکاپ کامل بگیرید؛ فایلها و خروجی دیتابیس. اگر هر دو هاست cPanel دارند، بکاپ کامل حساب و بازگردانی آن روی سرور جدید معمولاً سادهترین مسیر است و برخی میزبانها این انتقال را خودشان انجام میدهند. در غیر این صورت:
- فایلها را روی هاست جدید بارگذاری کنید.
- دیتابیس و کاربر دیتابیس را بسازید و خروجی را درونریزی کنید.
- اطلاعات اتصال دیتابیس را در فایل تنظیمات سایت، مثلاً
wp-config.phpدر وردپرس، اصلاح کنید. - نسخه PHP و افزونههای لازم PHP را مشابه سرور قبلی یا جدیدتر و سازگار تنظیم کنید.
اگر آدرس سایت هم تغییر میکند، جایگزینی آدرسها در دیتابیس را با ابزاری انجام دهید که دادههای سریالشده وردپرس را خراب نکند؛ جایگزینی متنی ساده در فایل خروجی دیتابیس معمولاً مشکلساز است.
قدم چهارم: تست پیش از تغییر DNS
لازم نیست برای دیدن سایت روی سرور جدید صبر کنید. با افزودن یک خط به فایل hosts رایانه خودتان، فقط آن رایانه را به سرور جدید هدایت کنید. در ویندوز این فایل در مسیر C:WindowsSystem32driversetchosts است و خط آن چیزی شبیه 203.0.113.50 company.com www.company.com خواهد بود. حالا همهچیز را آزمایش کنید: صفحهها، ورود به پیشخوان، جستوجو، فرمها، پرداخت و ارسال ایمیل از سایت. پس از تست، این خط را حذف کنید.
قدم پنجم: روز انتقال
- در زمان کمبازدید، تغییر محتوا را متوقف کنید؛ سفارشها یا نوشتههایی که در این فاصله روی سرور قدیمی ثبت شوند، از دست میروند.
- اگر سایت پس از کپی اول تغییر کرده، دیتابیس را یک بار دیگر منتقل کنید.
- رکورد A را به IP جدید تغییر دهید، یا اگر تصمیم دارید DNS هم به میزبان جدید منتقل شود، پیش از تغییر NS همه رکوردها را آنجا بسازید.
- پس از رسیدن ترافیک به سرور جدید، گواهی SSL را صادر یا بررسی کنید.
- فرمها، ارسال ایمیل از سایت و کارهای زمانبندیشده را دوباره آزمایش کنید.
پس از انتقال
هاست قدیمی را دستکم چند روز تا یکی دو هفته فعال نگه دارید تا اگر مشکلی پیدا شد، راه بازگشت داشته باشید. لاگ خطای سرور جدید و گزارش خطاهای ۴۰۴ را بررسی کنید و پس از اطمینان، TTL را به مقدار معمول برگردانید. پیش از لغو حساب قدیمی، یک بکاپ کامل آخر از آن برای آرشیو نگه دارید.
چکلیست
- فهرست کامل سایتها، دیتابیسها، ایمیلها و رکوردهای DNS
- کاهش TTL یکی دو روز پیش از انتقال
- تست کامل روی سرور جدید با فایل hosts
- توقف تغییرات محتوا در زمان انتقال
- SSL معتبر و ارسال ایمیل سایت روی سرور جدید
- هاست قدیمی تا اطمینان کامل فعال بماند
کارشناسان ITPlus724 انتقال سایت و ایمیل به هاست cPanel را با برنامهریزی و تست کامل انجام میدهند تا جابهجایی بدون قطعی محسوس انجام شود.