مقاله

انتقال سایت وردپرس به هاست دیگر یا سرور جدید؛ مراحل و خطاها

انتقال سایت وردپرس به هاست دیگر یا سرور جدید؛ مراحل و خطاها

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

سایت وردپرسی از چه چیزهایی تشکیل شده است؟

هر سایت وردپرسی سه بخش اصلی دارد و اگر یکی از آن‌ها جا بماند، سایت روی هاست جدید کامل بالا نمی‌آید.

  • فایل‌های سایت: هستهٔ وردپرس، قالب، افزونه‌ها و مهم‌تر از همه پوشهٔ wp-content/uploads که همهٔ عکس‌ها و فایل‌هایی است که در طول زمان بارگذاری کرده‌اید. این پوشه معمولاً بزرگ‌ترین بخش سایت است.
  • پایگاه داده: متن نوشته‌ها و برگه‌ها، محصولات و سفارش‌ها، کاربران، دیدگاه‌ها و تنظیمات سایت همه در پایگاه داده نگه داشته می‌شوند، نه در فایل‌ها.
  • فایل wp-config.php: فایلی کوچک در ریشهٔ سایت که به وردپرس می‌گوید به کدام پایگاه داده، با چه نام کاربری و رمزی وصل شود. بعد از انتقال تقریباً همیشه باید ویرایش شود.

کنار این‌ها یک فایل پنهان به نام .htaccess هم در بیشتر هاست‌ها وجود دارد که آدرس‌های سایت را مدیریت می‌کند. چون پنهان است، گاهی موقع کپی‌کردن جا می‌ماند و بعداً دردسر درست می‌کند.

کدام روش انتقال به سایت شما می‌خورد؟

برای بردن سایت وردپرسی به هاست جدید چهار راه رایج وجود دارد. هیچ‌کدام برای همه بهترین نیست؛ انتخاب درست به حجم سایت، نوع پنل دو هاست و میزان آشنایی خودتان با سرور بستگی دارد. جدول زیر را از نگاه صاحب سایت بخوانید، نه برنامه‌نویس.

روش برای چه سایتی مناسب است نقطهٔ قوت جایی که گیر می‌کند
سرویس انتقال خود هاست جدید صاحب سایتی که دسترسی فنی ندارد و هاست جدید چنین سرویسی را ارائه می‌کند کار را کسی انجام می‌دهد که سرور مقصد را می‌شناسد معمولاً فقط فایل و پایگاه داده جابه‌جا می‌شود؛ آزمایش سایت، ایمیل‌ها و تغییر DNS هنوز با شماست. دامنهٔ کار را پیش از شروع کتبی بپرسید
افزونهٔ انتقال مثل Duplicator یا All-in-One WP Migration سایت کوچک و متوسط، به‌خصوص انتقال از لوکال (مثلاً XAMPP) به هاست بسته‌بندی، جایگزینی آدرس و نصب روی مقصد تقریباً خودکار است در سایت حجیم به سقف حجم بارگذاری یا زمان اجرای PHP هاست می‌خورد؛ امکانات نسخهٔ رایگان هر افزونه را پیش از شروع در صفحهٔ خودش بخوانید
دستی با مدیر فایل و phpMyAdmin در cPanel یا DirectAdmin هر حجمی، وقتی می‌خواهید بدانید دقیقاً چه چیزی کجا رفته است به هیچ افزونه‌ای وابسته نیست و هر مرحله قابل بررسی است جایگزینی آدرس‌ها و فایل پنهان .htaccess بیشترین خطا را می‌سازند
با SSH و WP-CLI سایت‌های بزرگ و فروشگاه‌های پرسفارش، اگر هر دو هاست دسترسی SSH بدهند محدودیت حجم بارگذاری از مرورگر را ندارد، سریع و تکرارپذیر است به آشنایی با خط فرمان نیاز دارد و بسیاری از هاست‌های اشتراکی SSH نمی‌دهند

یک نکتهٔ مهم دربارهٔ پنل‌ها: بیشتر هاست‌های اشتراکی در ایران با cPanel یا DirectAdmin کار می‌کنند. نسخهٔ پشتیبان کاملی که از خود پنل گرفته می‌شود برای بازگردانی روی همان نوع پنل ساخته شده و بازگرداندن نسخهٔ cPanel روی DirectAdmin یا برعکس همیشه سازگار نیست. اگر نوع پنل عوض می‌شود، فایل‌ها و پایگاه داده را جدا بردارید یا از افزونه کمک بگیرید؛ به بکاپ کامل پنل تکیه نکنید.

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

پیش از انتقال؛ آماده‌سازی که بیشتر مشکل‌ها را حذف می‌کند

بیشتر انتقال‌هایی که خراب می‌شوند، در مرحلهٔ آماده‌سازی عجله کرده‌اند. این چند کار را پیش از شروع انجام دهید.

یک نسخهٔ پشتیبان کامل بگیرید

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

هاست جدید را با نیازهای سایت مقایسه کنید

نسخهٔ PHP هاست جدید را با هاست فعلی مقایسه کنید. اگر هاست جدید نسخهٔ خیلی جدیدتری دارد، ممکن است افزونه یا قالب قدیمی با آن سازگار نباشد؛ اگر قدیمی‌تر است، ممکن است وردپرس و افزونه‌های به‌روز روی آن کار نکنند. فضای کافی برای فایل‌ها، امکان ساخت پایگاه داده و امکان نصب گواهی SSL را هم بررسی کنید. معیارهای انتخاب هاست مناسب را در راهنمای خرید هاست برای سایت وردپرسی مفصل گفته‌ایم.

TTL دامنه را از چند روز قبل پایین بیاورید

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

زمان کم‌بازدید را انتخاب کنید و تغییرات را متوقف کنید

از لحظه‌ای که از پایگاه داده نسخه برمی‌دارید تا لحظه‌ای که دامنه به سرور جدید اشاره می‌کند، هر تغییری روی سایت قدیم ثبت شود از دست می‌رود. پس:

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

مراحل انتقال سایت وردپرس از یک هاست به هاست دیگر

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

  1. کپی فایل‌ها: همهٔ فایل‌های سایت را از هاست قدیم بردارید. ساده‌ترین راه این است که در مدیر فایل هاست، کل پوشهٔ سایت را فشرده کنید، فایل فشرده را دانلود کنید، در هاست جدید بارگذاری و همان‌جا از حالت فشرده خارج کنید. مطمئن شوید فایل پنهان .htaccess هم منتقل شده است.
  2. خروجی گرفتن از پایگاه داده: از ابزار مدیریت پایگاه دادهٔ هاست قدیم، از پایگاه دادهٔ سایت یک خروجی کامل بگیرید. نتیجه یک فایل است که همهٔ محتوا و تنظیمات سایت را دارد.
  3. ساخت پایگاه دادهٔ جدید: در هاست جدید یک پایگاه دادهٔ خالی و یک کاربر برایش بسازید، به کاربر روی این پایگاه داده دسترسی کامل بدهید و نام پایگاه داده، نام کاربر و رمز را یادداشت کنید.
  4. درون‌ریزی پایگاه داده: فایل خروجی را در پایگاه دادهٔ تازه درون‌ریزی کنید. اگر فایل بزرگ است و ابزار هاست خطای حجم می‌دهد، از پشتیبانی هاست بخواهید آن را برایتان درون‌ریزی کند.
  5. ویرایش wp-config.php: در فایل wp-config.php روی هاست جدید، نام پایگاه داده، نام کاربر، رمز و میزبان پایگاه داده را با مقادیر تازه جایگزین کنید. به پیشوند جدول‌ها دست نزنید؛ باید همان مقدار قبلی بماند.
  6. آزمایش پیش از تغییر DNS: سایت را روی هاست جدید باز کنید و بررسی کنید، در حالی که بازدیدکننده‌ها هنوز سایت قدیم را می‌بینند. توضیح این مرحله را در بخش بعد آورده‌ایم.
  7. تغییر DNS یا نیم‌سرورها: وقتی از درستی سایت مطمئن شدید، رکورد دامنه را به آدرس سرور جدید تغییر دهید یا نیم‌سرورها را عوض کنید.
  8. نصب SSL و بررسی نهایی: بلافاصله بعد از اشاره‌کردن دامنه به سرور جدید، گواهی SSL را روی هاست جدید فعال کنید؛ اگر آدرس سایت با https ذخیره شده باشد، تا گواهی نصب نشود مرورگر هشدار می‌دهد. بعد صفحه‌های اصلی، فرم‌ها، ورود به پیشخوان و اگر فروشگاه دارید یک سفارش آزمایشی را بررسی کنید.
مراحل انتقال سایت وردپرس از یک هاست به هاست دیگر به ترتیب

آزمایش سایت روی هاست جدید پیش از تغییر DNS

وردپرس آدرس سایت را در پایگاه داده نگه می‌دارد و معمولاً هر درخواستی را به همان دامنه می‌فرستد. برای همین باز کردن سایت با یک آدرس موقت اغلب درست کار نمی‌کند و شما را به سایت قدیم برمی‌گرداند. راه مطمئن‌تر این است که فقط روی کامپیوتر خودتان کاری کنید که دامنه به سرور جدید باز شود.

این کار با فایلی به نام hosts در سیستم‌عامل انجام می‌شود. با افزودن یک خط که آدرس IP سرور جدید و نام دامنه را کنار هم می‌گذارد، مرورگر شما سایت را از هاست جدید می‌خواند، اما بقیهٔ مردم همچنان سایت قدیم را می‌بینند. اگر هنوز گواهی SSL روی هاست جدید فعال نیست، هشدار مرورگر در این آزمایش طبیعی است. بعد از آزمایش، آن خط را پاک کنید. اگر این کار برایتان ناآشناست، پشتیبانی هاست جدید معمولاً راهش را برای سیستم‌عامل شما توضیح می‌دهد.

بعد از تغییر DNS، هاست قدیم را فوراً حذف نکنید

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

ترتیب کار برای انتقال بدون قطعی

همهٔ مراحل بالا را می‌شود روی یک خط زمانی چید. ترتیب زیر همان چیزی است که قطعی را به چند دقیقه یا هیچ می‌رساند:

  1. یکی دو روز قبل: TTL را کم کنید، هاست جدید را بخرید و نسخهٔ PHP آن را با هاست فعلی هم‌تراز کنید.
  2. روز انتقال، پیش از هر چیز: ثبت محتوا و سفارش را متوقف کنید و نسخهٔ پشتیبان تازه بگیرید.
  3. روی هاست جدید: فایل‌ها و پایگاه داده را بالا بیاورید و با فایل hosts روی کامپیوتر خودتان آزمایش کنید.
  4. صندوق‌های ایمیل و رکوردهای ایمیل: پیش از تغییر DNS آماده شوند، نه بعد از آن.
  5. تغییر DNS: فقط وقتی همهٔ آزمایش‌ها درست بود.
  6. بلافاصله بعد: SSL را فعال کنید و چک‌لیست پایین مقاله را اجرا کنید.
  7. چند روز بعد: وقتی دیگر درخواستی به سرور قدیم نمی‌رسد، آخرین نسخهٔ پشتیبان را از هاست قدیم بردارید و بعد سرویس را کنار بگذارید.

اگر سفارش یا فرمی در فاصلهٔ جاافتادن DNS روی هاست قدیم ثبت شد، آن را دستی به سایت جدید منتقل کنید یا با مشتری تماس بگیرید؛ برای همین است که در روز انتقال ثبت سفارش موقتاً بسته می‌شود.

ایمیل‌های دامنه را فراموش نکنید

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

انتقال بین هاست ایرانی و خارجی؛ چه چیزهایی فرق می‌کند؟

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

  • سرعت برای بازدیدکنندهٔ ایرانی: وقتی بیشتر مخاطبان شما در ایران هستند، سروری که از نظر شبکه به آن‌ها نزدیک‌تر است معمولاً پاسخ سریع‌تری می‌دهد. پیش از تصمیم، سرعت باز شدن سایت را از اینترنت داخل ایران روی هر دو هاست امتحان کنید، نه فقط با ابزارهای خارجی.
  • اختلال اینترنت بین‌المللی: در دوره‌هایی که دسترسی به اینترنت خارج از کشور محدود یا قطع می‌شود، سایتی که روی سرور خارجی است ممکن است برای بازدیدکنندهٔ داخل ایران باز نشود. برعکس، سرور ایرانی در همان دوره‌ها ممکن است به مخزن وردپرس، به‌روزرسانی افزونه‌ها یا سرویس‌های خارجی که سایت به آن‌ها وصل است دسترسی نداشته باشد.
  • درگاه پرداخت: بسیاری از درگاه‌های پرداخت و شرکت‌های پرداخت‌یاری، درخواست‌ها را فقط از IP ثبت‌شدهٔ سرور فروشگاه می‌پذیرند. با تغییر هاست، IP سرور عوض می‌شود؛ پس پیش از تغییر DNS، IP تازه را از هاست جدید بگیرید و از طریق پنل یا پشتیبانی درگاه برای ثبتش اقدام کنید. آدرس بازگشت از درگاه هم اگر دامنه عوض شده باید به‌روز شود. یک پرداخت آزمایشی بعد از انتقال، تنها راه مطمئن شدن است.
  • پنل پیامک و سرویس‌های دیگر: پنل‌های پیامکی و بعضی سرویس‌های ارسال یا استعلام هم ممکن است فقط به IP مشخصی اجازهٔ اتصال بدهند. فهرست سرویس‌هایی را که سایت به آن‌ها وصل است از قبل بنویسید و IP جدید را در هرکدام که لازم است ثبت کنید.
  • ارسال ایمیل از سایت: بعضی سرورها ارسال مستقیم ایمیل را محدود می‌کنند یا ایمیل‌هایشان به پوشهٔ هرزنامه می‌رود. اگر روی هاست قبلی ایمیل‌های سایت بدون تنظیم خاصی می‌رسید، روی هاست جدید ممکن است لازم شود ارسال را از طریق SMTP یک صندوق واقعی انجام دهید.

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

مشکل‌های رایج بعد از انتقال و راه‌حل آن‌ها

بیشتر خطاهای بعد از انتقال علت شناخته‌شده‌ای دارند. این جدول را از بالا به پایین بررسی کنید.

مشکل علت محتمل راه‌حل
صفحهٔ سفید یا خطای ۵۰۰ ناسازگاری نسخهٔ PHP، افزونهٔ قدیمی یا فایل .htaccess ناسازگار نسخهٔ PHP را مثل هاست قبلی تنظیم کنید و گزارش خطای هاست را بخوانید
خطای اتصال به پایگاه داده اطلاعات اشتباه در wp-config.php نام پایگاه داده، کاربر، رمز و میزبان را دوباره بررسی کنید
عکس‌ها نمایش داده نمی‌شوند پوشهٔ uploads ناقص منتقل شده یا آدرس‌ها اشتباه‌اند کامل‌بودن پوشهٔ uploads و آدرس سایت را بررسی کنید
هشدار ناامن بودن بعد از SSL محتوای مختلط؛ بعضی آدرس‌ها هنوز با http ذخیره شده‌اند نشانی وردپرس و نشانی سایت را در تنظیمات همگانی https کنید و بقیهٔ آدرس‌ها را با ابزار جایگزینی مطمئن تغییر دهید
صفحه‌ها به‌جز خانه خطای ۴۰۴ می‌دهند فایل .htaccess منتقل نشده یا ساختار پیوندها بازنویسی نشده در پیشخوان، بخش تنظیمات پیوندهای یکتا را یک بار ذخیره کنید
ایمیل‌ها نمی‌رسند صندوق‌ها یا رکوردهای ایمیل روی هاست قدیم مانده‌اند صندوق‌ها را بسازید و رکوردهای ایمیل را اصلاح کنید
مشکل‌های رایج بعد از انتقال سایت وردپرس و راه‌حل آن‌ها

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

انتقال سایت وردپرس به دامنهٔ جدید چه فرقی دارد؟

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

جایگزینی آدرس‌ها در پایگاه داده

آدرس دامنهٔ قدیم در جاهای زیادی از پایگاه داده ذخیره شده است: تنظیمات سایت مثل نشانی وردپرس و نشانی سایت، متن نوشته‌ها، آدرس عکس‌ها و تنظیمات قالب و افزونه‌ها. بخشی از این داده‌ها به شکلی به نام داده‌های سریالی ذخیره می‌شوند که طول هر متن هم کنارش ثبت شده است. اگر آدرس را با جست‌وجو و جایگزینی سادهٔ متنی در فایل پایگاه داده عوض کنید، طول متن‌ها با عدد ذخیره‌شده نمی‌خواند و تنظیمات ابزارک‌ها، قالب یا افزونه‌ها بی‌صدا از بین می‌روند. برای این کار از ابزار جایگزینی‌ای استفاده کنید که داده‌های سریالی را درست مدیریت می‌کند، و پیش از آن حتماً نسخهٔ پشتیبان بگیرید.

جایگزینی امن آدرس‌ها با WP-CLI یا افزونه

مستندات رسمی وردپرس برای این کار سه راه پیشنهاد می‌کند و صریحاً هشدار می‌دهد که جایگزینی ساده در پایگاه داده به داده‌های سریالی آسیب می‌زند. کوئری REPLACE در phpMyAdmin که در بعضی آموزش‌ها دیده می‌شود، دقیقاً همین خطر را دارد.

  • دستور wp search-replace در WP-CLI: اگر هاست جدید دسترسی SSH و WP-CLI دارد، این دستور طبق مستندات خودش داده‌های سریالی PHP را هوشمندانه مدیریت می‌کند. اول آن را با گزینهٔ --dry-run اجرا کنید تا فقط گزارش بدهد چند مورد تغییر می‌کند و چیزی ذخیره نشود. در اجرای اصلی، ستون GUID را با گزینهٔ --skip-columns=guid کنار بگذارید.
  • افزونهٔ Better Search Replace: اگر فقط به پیشخوان وردپرس دسترسی دارید، مستندات وردپرس این افزونه را نام برده است. آن هم حالت اجرای آزمایشی دارد؛ اول همان را بزنید.
  • اسکریپت جایگزینی پایگاه داده: راه سومی که مستندات نام می‌برد، اسکریپتی است که روی سرور اجرا می‌شود و به گفتهٔ خود مستندات برای کسانی است که با مدیریت پایگاه داده راحت‌اند. اگر چنین نیستید، سراغش نروید.

ستون GUID در جدول نوشته‌ها را هرگز تغییر ندهید. مستندات وردپرس روی این موضوع تأکید ویژه دارد، چون خوراک‌خوان‌ها با همین شناسه تشخیص می‌دهند کدام نوشته را قبلاً نشان داده‌اند و تغییرش باعث می‌شود نوشته‌های قدیمی دوباره تازه به نظر برسند.

اگر بعد از انتقال حتی نمی‌توانید وارد پیشخوان شوید، چون سایت مدام به دامنهٔ قدیم برمی‌گردد، می‌توانید موقتاً دو ثابت WP_HOME و WP_SITEURL را با آدرس تازه در wp-config.php تعریف کنید. این کار آدرس را در خود فایل قفل می‌کند و تا وقتی آنجاست، دو فیلد نشانی در تنظیمات همگانی قابل ویرایش نیستند؛ پس بعد از اصلاح آدرس در پایگاه داده، بهتر است برشان دارید. اگر برای همین منظور از ثابت RELOCATE استفاده کردید، طبق مستندات وردپرس ماندنش ناامن است و باید بلافاصله بعد از کار حذف شود.

ریدایرکت ۳۰۱ از دامنهٔ قدیم

دامنهٔ قدیم را رها نکنید. هر آدرس دامنهٔ قدیم باید با ریدایرکت ۳۰۱ به همان صفحه در دامنهٔ جدید برود، نه فقط به صفحهٔ خانه. این‌طور هم بازدیدکننده‌هایی که از لینک‌های قدیمی می‌آیند گم نمی‌شوند و هم گوگل اعتبار صفحه‌ها را به آدرس‌های جدید منتقل می‌کند. برای همین دامنهٔ قدیم را تا مدت طولانی تمدید کنید. راهنمای گوگل توصیه می‌کند ریدایرکت‌ها دست‌کم ۱۸۰ روز بمانند و اگر هنوز از جست‌وجو به آدرس‌های قدیم ورودی می‌رسد، بیشتر. همین راهنما می‌گوید دامنهٔ قدیم را دست‌کم یک سال دیگر تمدید کنید تا کس دیگری آن را نخرد.

خبر دادن به گوگل

دامنهٔ جدید را در Google Search Console ثبت و تأیید کنید و نقشهٔ سایت جدید را معرفی کنید. سرچ کنسول ابزاری به نام تغییر آدرس دارد که به گوگل می‌گوید سایت از دامنهٔ قدیم به دامنهٔ جدید رفته است. این ابزار فقط برای تغییر دامنه است و در تغییر هاست لازم نیست. برای استفاده از آن، هر دو دامنه باید با یک حساب گوگل در مالکیت شما تأیید شده باشند و ریدایرکت‌ها از قبل کار کنند. این ابزار زیردامنه‌ها را خودکار جابه‌جا نمی‌کند؛ اگر نسخهٔ با www و بدون www دامنهٔ قدیم هر دو در سرچ کنسول ثبت شده‌اند، برای هرکدام جداگانه اجرایش کنید. برای رفتن از http به https یا اضافه و حذف کردن www روی همان دامنه هم نباید از آن استفاده کرد؛ در این حالت‌ها ریدایرکت درست کافی است. حتی با همهٔ این کارها طبیعی است که رتبه‌ها مدتی نوسان داشته باشند. اگر تغییر دامنه هم‌زمان با تغییر طراحی سایت است، نکته‌های مقالهٔ بازطراحی سایت بدون افت رتبه را هم در برنامه بگذارید.

چک‌لیست کوتاه بعد از انتقال

  • صفحهٔ خانه، چند نوشته و چند برگه را با موبایل و کامپیوتر باز کنید.
  • وارد پیشخوان وردپرس شوید و ببینید ویرایش و ذخیره کار می‌کند.
  • فرم تماس را پر کنید و ببینید ایمیلش می‌رسد.
  • در فروشگاه، یک سفارش آزمایشی تا مرحلهٔ پرداخت پیش ببرید.
  • قفل سایت در مرورگر را بررسی کنید و مطمئن شوید هشدار محتوای ناامن ندارید.
  • نسخهٔ پشتیبان خودکار را روی هاست جدید دوباره راه بیندازید.
  • چند روز بعد، گزارش خطاهای Google Search Console را نگاه کنید.

چک‌لیست فنی برای کسی که انتقال را انجام می‌دهد

فهرست بالا آن چیزی است که صاحب سایت می‌بیند. این موارد پشت صحنه‌اند و اگر جا بمانند، معمولاً چند روز بعد خودشان را نشان می‌دهند:

  • هم‌ترازی PHP: علاوه بر نسخه، افزونه‌های PHP که سایت لازم دارد و سقف حافظه و حجم بارگذاری را با هاست قبلی مقایسه کنید.
  • کارهای زمان‌بندی‌شده: وردپرس کارهای زمان‌بندی‌شده مثل انتشار نوشتهٔ برنامه‌ریزی‌شده، ایمیل‌های دوره‌ای یا لغو سفارش‌های پرداخت‌نشده را با سیستمی به نام WP-Cron و همراه بازدیدها اجرا می‌کند. اگر روی هاست قبلی این کار به یک کرون‌جاب در پنل هاست سپرده شده بود، آن کرون‌جاب خودبه‌خود منتقل نمی‌شود و باید روی هاست جدید دوباره ساخته شود. نشانهٔ این حالت، ثابت DISABLE_WP_CRON در wp-config.php است؛ این فایل منتقل می‌شود ولی کرون‌جاب پنل نه، و نتیجه این است که کارهای زمان‌بندی‌شده بی‌صدا متوقف می‌شوند.
  • افزونهٔ کش: کش را پیش و پس از انتقال کامل پاک کنید. بعضی افزونه‌های کش مسیر کامل پوشه‌های سرور را در فایل‌های تنظیم خود نگه می‌دارند؛ اگر بعد از انتقال خطا دادند، افزونه را یک بار غیرفعال و دوباره فعال کنید تا تنظیماتش از نو ساخته شود.
  • SMTP و ایمیل‌های سایت: اگر افزونهٔ SMTP دارید، نام سرور و رمز صندوق را با هاست جدید چک کنید و یک ایمیل آزمایشی بفرستید.
  • دسترسی فایل‌ها: اگر فایل‌ها با برنامهٔ انتقال فایل یا از حالت فشرده بیرون آمده‌اند، مالک و سطح دسترسی آن‌ها ممکن است عوض شده باشد. اگر وردپرس نتوانست عکس بارگذاری یا افزونه نصب کند، از پشتیبانی هاست بخواهید دسترسی‌ها را به حالت استاندارد برگرداند.
  • شبکهٔ توزیع محتوا یا فایروال ابری: اگر سایت پشت چنین سرویسی است، معمولاً به‌جای نیم‌سرورها فقط IP مقصد را در همان سرویس عوض می‌کنید.
  • نسخهٔ پشتیبان خودکار و افزونه‌های امنیتی: مسیر ذخیرهٔ بکاپ و فهرست IPهای مجاز در افزونه‌های امنیتی را با سرور جدید به‌روز کنید. در این باره امنیت سایت وردپرس را هم ببینید.

انتقال هاست جای خوبی است تا نگاهی هم به کارهای نگهداری بعد از آن بیندازید؛ از به‌روزرسانی‌ها تا بکاپ منظم. این کارها را در مقالهٔ پشتیبانی سایت وردپرسی مرور کرده‌ایم.

پرسش‌های رایج

انتقال سایت وردپرس به هاست دیگر چقدر طول می‌کشد؟

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

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

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

انتقال سایت وردپرس به دامنهٔ جدید چطور انجام می‌شود؟

مراحل مثل تغییر هاست است، به‌اضافهٔ سه کار: جایگزینی آدرس‌ها در پایگاه داده با ابزاری که داده‌های سریالی را درست مدیریت کند، ریدایرکت ۳۰۱ هر صفحه از دامنهٔ قدیم به همان صفحه در دامنهٔ جدید، و استفاده از ابزار تغییر آدرس در Google Search Console.

انتقال سایت وردپرس از لوکال به هاست با انتقال بین دو هاست چه فرقی دارد؟

اصل کار یکی است: فایل‌ها و پایگاه داده منتقل می‌شوند و wp-config.php ویرایش می‌شود. فرقش این است که آدرس سایت روی کامپیوتر شما یک آدرس محلی است و باید با همان روش جایگزینی مطمئن، به آدرس دامنهٔ واقعی تغییر کند.

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

بله، افزونه‌های انتقال معتبر همین مراحل را خودکار انجام می‌دهند و برای سایت‌های کوچک و متوسط راه راحتی هستند. در سایت‌های خیلی بزرگ ممکن است به محدودیت حجم یا زمان اجرای هاست بخورند.

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

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

بعد از انتقال سایت به سرور جدید، چرا هنوز سایت قدیم باز می‌شود؟

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

سایت وردپرسی که جابه‌جایی‌اش ساده است

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

برای سایتتان با سایتوپیا مشورت کنید

تماس بگیرید؛ نیاز کسب‌وکارتان را بررسی می‌کنیم و قیمت دقیق را می‌گوییم.

تماس: ۰۹۳۸۰۵۰۱۲۱۴ پیام بگذارید