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

چیزی که می‌بینید علت محتمل
«خطا در برقراری ارتباط با پایگاه‌داده» مشخصات دیتابیس در wp-config.php
خطای ۵۰۰ htaccess. یا نسخه‌ی PHP
صفحه‌ی سفید خطای PHP که نمایش داده نمی‌شود
صفحه‌ی اصلی باز می‌شود، بقیه ۴۰۴ htaccess. جا مانده
صفحه‌ی نصب وردپرس دیتابیس خالی است یا پیشوند جدول‌ها فرق دارد
ریدایرکت بی‌پایان تنظیم https یا آدرس سایت
سایت بدون ظاهر (فقط متن) آدرس فایل‌ها هنوز http یا دامنه‌ی قبلی است

خطای اتصال به پایگاه‌داده

فایل wp-config.php را باز کنید و این چهار مقدار را با هاست جدید تطبیق دهید:

  • DB_NAME و DB_USER: در سی‌پنل، نام دیتابیس و کاربر پیشوند حساب را دارند (مثل user_dbname). نام کامل را بنویسید.
  • DB_PASSWORD: رمز کاربر دیتابیس، نه رمز سی‌پنل.
  • DB_HOST: معمولاً localhost.

اگر همه درست است، بررسی کنید کاربر واقعاً به دیتابیس وصل شده باشد. در MySQL Databases سی‌پنل، بخش Add User To Database را ببینید.

صفحه MySQL Databases در سی‌پنل برای ساخت دیتابیس
MySQL Databases: کاربر باید با همه‌ی دسترسی‌ها به دیتابیس اضافه شده باشد

خطای ۵۰۰

اول لاگ را بخوانید، حدس نزنید. بخش Errors در سی‌پنل آخرین خطاها را با نام فایل نشان می‌دهد.

بخش Errors در سی‌پنل برای دیدن لاگ خطاهای سایت
لاگ خطا در سی‌پنل: خط آخر معمولاً علت خطای ۵۰۰ را می‌گوید
  • اگر لاگ به htaccess. اشاره می‌کند: فایل را موقتاً به htaccess-old. تغییر نام دهید. اگر سایت باز شد، از پیشخوان وردپرس در «تنظیمات ← پیوندهای یکتا» فقط یک بار «ذخیره» را بزنید تا فایل سالم ساخته شود.
  • اگر لاگ خطای PHP نشان می‌دهد: نسخه‌ی PHP را با هاست قبلی یکی کنید.

صفحه‌ی سفید

صفحه‌ی سفید یعنی خطای PHP رخ داده ولی نمایش داده نمی‌شود. در wp-config.php این دو خط را موقتاً اضافه کنید تا خطا در فایل wp-content/debug.log ثبت شود:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );

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

صفحه MultiPHP Manager در سی‌پنل
تغییر نسخه‌ی PHP دامنه از MultiPHP Manager

صفحه‌ی اصلی باز می‌شود ولی بقیه ۴۰۴

فایل htaccess. منتقل نشده است. این فایل مخفی است و اگر در File Manager نمایش فایل‌های مخفی خاموش باشد، موقع انتخاب و فشرده‌سازی جا می‌ماند. راه‌حل: در پیشخوان وردپرس، «تنظیمات ← پیوندهای یکتا» را باز و ذخیره کنید. (نمایش فایل‌های مخفی در سی‌پنل)

تنظیمات پیوند یکتا در وردپرس
ذخیره‌ی دوباره‌ی پیوندهای یکتا، فایل htaccess. را از نو می‌سازد

صفحه‌ی نصب وردپرس نمایش داده می‌شود

وردپرس به دیتابیس وصل شده ولی جدول‌هایش را پیدا نمی‌کند. دو حالت دارد:

  • فایل SQL وارد نشده یا ناقص وارد شده. در phpMyAdmin ببینید جدول‌ها وجود دارند یا نه.
  • پیشوند جدول‌ها با مقدار $table_prefix در wp-config.php یکی نیست (مثلاً جدول‌ها wp_ هستند و فایل wpx_ نوشته).

نصب را ادامه ندهید؛ یک سایت خالی ساخته می‌شود.

ریدایرکت بی‌پایان یا سایت بدون ظاهر

هر دو از ناهماهنگی آدرس می‌آیند:

  • SSL روی هاست جدید هنوز فعال نشده ولی سایت به https می‌فرستد. اول گواهی را فعال کنید.
  • آدرس سایت در دیتابیس با http ذخیره شده و سایت با https باز می‌شود. مقدار siteurl و home را در جدول wp_options بررسی کنید.

اگر هیچ‌کدام جواب نداد

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

سوال‌های رایج

بعد از انتقال، رمز پیشخوان وردپرس عوض می‌شود؟

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

خطا فقط در پیشخوان است و سایت سالم است؛ چرا؟

معمولاً یک افزونه با نسخه‌ی PHP جدید ناسازگار است. پوشه‌ی آن افزونه را در wp-content/plugins موقتاً تغییر نام دهید تا غیرفعال شود.

خطاهای دیگر وردپرس را کجا ببینم؟

در خطاهای رایج وردپرس و روش رفع آن‌ها.