TürkiyeVPS

آموزش انتقال سایت به هاست جدید بدون قطعی

می‌توان سایت را به هاست جدیدی منتقل کرد بی‌آنکه بازدیدکنندگان متوجه قطعی شوند. از گرفتن نسخهٔ پشتیبان تا تغییر DNS، مراحل انتقال بدون قطعی را به ترتیب توضیح می‌دهیم.

5 دقیقه مطالعه

عوض کردن هاست ممکن است نگران‌کننده باشد: «آیا سایت هنگام انتقال از دسترس خارج می‌شود؟ آیا اطلاعات از بین می‌رود؟» اگر مراحل به ترتیب درست انجام شوند، هیچ‌کدام نباید اتفاق بیفتد. ایدهٔ اصلی ساده است: تا وقتی سرور جدید کاملاً آماده و آزمایش نشده، سرور قدیمی را رها نکنید. بازدیدکنندگان تا زمانی که رکورد DNS دامنهٔ شما به سرور جدید اشاره کند، همچنان از سرور قدیمی سرویس می‌گیرند. این راهنما برای سایت‌هایی است که از PHP و MySQL/MariaDB استفاده می‌کنند (از جمله وردپرس).

۱. برنامه‌ریزی: چه چیزی را منتقل می‌کنید؟

یک وب‌سایت معمولاً سه بخش دارد:

  • فایل‌ها: فایل‌های PHP، قالب‌ها، افزونه‌ها و تصاویر بارگذاری‌شده.
  • پایگاه داده: نوشته‌ها، کاربران، سفارش‌ها و تنظیمات.
  • تنظیمات DNS: اینکه دامنهٔ شما به کدام سرور اشاره می‌کند. اگر از ایمیل استفاده می‌کنید، محل میزبانی ایمیل هم به همین تنظیمات وابسته است.

اگر سایت شما داده‌هایی دارد که مدام تغییر می‌کنند، مثل سفارش‌ها یا ثبت‌نام‌ها، انتقال را برای کم‌ترافیک‌ترین ساعت روز برنامه‌ریزی کنید.

۲. مقدار TTL در DNS را از قبل کم کنید

TTL (Time To Live) تعیین می‌کند که یک رکورد DNS چه مدت در حافظهٔ موقت اینترنت‌دهنده‌های بازدیدکنندگان بماند. اگر TTL یک روز باشد، تغییر شما ممکن است تا یک روز بعد به برخی بازدیدکنندگان نرسد.

دست‌کم یک روز پیش از انتقال، در بخش مدیریت DNS دامنه، TTL رکوردی را که به سایت شما اشاره می‌کند (معمولاً رکورد A) به ۳۰۰ ثانیه (۵ دقیقه) کاهش دهید. این‌طور وقتی روز انتقال DNS را تغییر دهید، بازدیدکنندگان سریع به سرور جدید منتقل می‌شوند. نحوهٔ کار DNS را در مقالهٔ DNS چیست توضیح داده‌ایم.

۳. هاست جدید را آماده کنید

حساب هاست جدید را بسازید و مطمئن شوید نسخهٔ PHP با سایت شما سازگار است. حساب‌های هاست TürkiyeVPS همراه با PHP 8.3 و MariaDB ارائه می‌شوند و هنگام راه‌اندازی حساب، یک پایگاه داده و کاربر آن به‌صورت خودکار ساخته می‌شود. اگر هم هاست جدید و هم دامنهٔ رایگان می‌خواهید، پکیج «هاست + دامنه رایگان» سالانه $15 است. اگر می‌دانید سایتتان به نسخهٔ قدیمی PHP وابسته است، ابتدا به‌روزرسانی آن را روی هاست قبلی امتحان کنید.

۴. از سرور قدیمی نسخهٔ پشتیبان بگیرید

فایل‌ها: در فایل منیجر هاست قدیمی، پوشهٔ اصلی سایت را به‌صورت ZIP فشرده و دانلود کنید.

پایگاه داده: در phpMyAdmin پایگاه داده را انتخاب کنید و از زبانهٔ Export آن را با قالب SQL دانلود کنید. برای پایگاه داده‌های بزرگ می‌توانید از گزینهٔ «Custom» همراه با فشرده‌سازی (gzip) استفاده کنید.

تا پایان انتقال این نسخه‌های پشتیبان را پاک نکنید؛ اگر مشکلی پیش بیاید، راه بازگشت شما هستند.

۵. روی سرور جدید بارگذاری کنید

  1. در فایل منیجر هاست جدید، فایل ZIP را در پوشهٔ اصلی بارگذاری و از حالت فشرده خارج کنید. در حساب‌های هاست TürkiyeVPS هر بار تا ۱۲۸ مگابایت می‌توان بارگذاری کرد؛ سایت‌های بزرگ‌تر را به چند فایل ZIP تقسیم کنید.
  2. در phpMyAdmin پایگاه دادهٔ جدید را انتخاب کنید و فایل SQL را از زبانهٔ Import بارگذاری کنید.
  3. اطلاعات پایگاه داده را در فایل پیکربندی سایت مطابق حساب جدید به‌روز کنید. در وردپرس این فایل wp-config.php است: مقدارهای DB_NAME، DB_USER، DB_PASSWORD و DB_HOST را تغییر دهید.

۶. پیش از تغییر DNS آزمایش کنید

پیش از هدایت بازدیدکنندگان، مطمئن شوید سایت روی سرور جدید درست کار می‌کند. در حساب‌های هاست TürkiyeVPS، لینک سایت در پنل کاربری به شما امکان می‌دهد پیش از اتصال دامنه، سایت را باز کنید. این موارد را بررسی کنید:

  • آیا صفحهٔ اصلی و چند صفحهٔ داخلی باز می‌شوند؟
  • آیا تصاویر بارگذاری می‌شوند؟
  • آیا می‌توان وارد بخش مدیریت شد؟
  • آیا فرم‌ها و در صورت وجود، صفحهٔ پرداخت کار می‌کنند؟

وردپرس دامنه را در پایگاه داده ذخیره می‌کند و ممکن است فقط روی خود دامنه به‌طور کامل کار کند؛ در این صورت این بررسی‌ها را بلافاصله پس از مرحلهٔ بعد انجام دهید و سرور قدیمی را روشن نگه دارید.

۷. رکورد DNS را به سرور جدید هدایت کنید

وقتی همه چیز آماده بود، رکورد DNS دامنه را طوری به‌روز کنید که به سرور جدید اشاره کند. اگر نمی‌دانید چه رکوردی وارد کنید، به تیم پشتیبانی ما پیام دهید. اگر TTL را از قبل کم کرده باشید، بیشتر بازدیدکنندگان ظرف چند دقیقه به سرور جدید منتقل می‌شوند؛ در برخی اینترنت‌دهنده‌ها ممکن است بیشتر طول بکشد.

در سایت‌هایی که داده‌هایشان مدام تغییر می‌کند، درست پیش از تغییر DNS، سفارش‌ها و ثبت‌نام‌های جدید را در سایت قدیمی موقتاً متوقف کنید (حالت تعمیر) و آخرین نسخهٔ پایگاه داده را منتقل کنید. این‌طور داده‌ها بین دو سرور تقسیم نمی‌شوند.

۸. هاست قدیمی را فوراً نبندید

ممکن است رسیدن تغییر DNS به همهٔ بازدیدکنندگان زمان ببرد. هاست قدیمی را دست‌کم چند روز دیگر فعال نگه دارید. در این مدت:

  • خطاهای ثبت‌شده روی سرور جدید را زیر نظر بگیرید.
  • در ابزارهای موتور جستجو (مثلاً Google Search Console) خطاهای خزش را بررسی کنید.
  • اگر ایمیلتان روی هاست قدیمی است، مطمئن شوید برای ایمیل راه‌حل جداگانه‌ای تنظیم کرده‌اید.

اگر همه چیز درست پیش رفت، می‌توانید هاست قدیمی را ببندید و TTL را دوباره افزایش دهید.

سوالات متداول

آیا سایت هنگام انتقال از دسترس خارج می‌شود؟

اگر به ترتیب درست انجام شود، نه. سرور قدیمی تا زمانی که تغییر DNS به همهٔ بازدیدکنندگان برسد به کار خود ادامه می‌دهد.

آیا باید دامنه را هم منتقل کنم؟

نه. برای انتقال سایت لازم نیست دامنه را به شرکت دیگری ترنسفر کنید؛ هدایت رکورد DNS به سرور جدید کافی است.

آیا با همین روش می‌توانم از هاست به VPS بروم؟

بله، مراحل یکسان است؛ فقط در VPS ابتدا وب‌سرور و پایگاه داده را خودتان راه‌اندازی می‌کنید. مقاله‌های نصب وردپرس روی VPS و هاست بگیرم یا VPS؟ را ببینید.

آیا پس از انتقال رتبهٔ سایتم در گوگل افت می‌کند؟

تا وقتی دامنه و نشانی صفحه‌ها ثابت بمانند و سایت بدون قطعی کار کند، تغییر سرور به‌تنهایی باعث افت رتبه نمی‌شود.