
به اشتراک بگذارید

به اشتراک بگذارید
آموزش وردپرس | بلاگ وبداده
انتقال وردپرس بین هاست cPanel و DirectAdmin
wp-config.php.wp-config.php اصلاح شود.wp-config.php. حواستان به تفاوت مسیر public_html و تغییر پیشوند نام دیتابیس باشد. بستر هاست سیپنل و وردپرس و پشتیبانی راهاندازی را میتوانید از وبداده بگیرید.wp-content)، دیتابیس MySQL، و فایل wp-config.php که این دو را به هم وصل میکند. اگر این سه را درست منتقل کنید، سایت دقیقاً مثل قبل بالا میآید؛ فرقی نمیکند از سیپنل به دایرکتادمین بروید یا برعکس./home/user/public_html/ قرار دارند، اما در دایرکتادمین مسیر ریشهی هر دامنه /home/user/domains/domain.com/public_html/ است. هنگام آپلود فایلها حتماً آنها را در پوشهی public_htmlِ درستِ همان دامنه قرار دهید، نه جای دیگر.
wp-config.php (مقدار DB_NAME) پیدا کنید و آن را از ستون کناری انتخاب کنید. سپس روی تب «Export» بزنید، حالت «Quick» و فرمت «SQL» را نگه دارید و «Go» را بزنید. یک فایل با پسوند .sql دانلود میشود که کل محتوای سایت شماست.public_html و در دایرکتادمین domains/domain.com/public_html). کل محتوا را انتخاب و در یک فایل zip فشرده کنید. این آرشیو شامل هستهی وردپرس، قالبها، افزونهها و پوشهی مهم wp-content است.
newuser_wpdb). چون نامکاربری حساب مقصد با مبدأ فرق دارد، این پیشوند تغییر میکند. پس نام کاملِ پیشونددارِ جدید را باید در wp-config.php بگذارید، نه نامی که در هاست قبلی بود..sql مرحلهی اول را انتخاب و «Go» را بزنید. پس از چند لحظه جدولهای سایت وارد دیتابیس میشوند. اگر دیتابیس حجیم است و با خطای حجم مواجه شدید، راهنمای ایمپورت دیتابیسهای بزرگ در phpMyAdmin کمکتان میکند.public_htmlِ درستِ همان دامنه شوید. اینجا همان جایی است که تفاوت دو پنل اهمیت پیدا میکند: در دایرکتادمین باید داخل domains/domain.com/public_html بروید. فایل zip مرحلهی دوم را آپلود کنید، روی آن راستکلیک کرده و «Extract» را بزنید. دقت کنید فایلها مستقیماً داخل public_html قرار بگیرند، نه در یک زیرپوشه.wp-config.php را در File Manager پیدا کنید، روی آن راستکلیک و «Edit» بزنید. سه مقدار مربوط به دیتابیس را با اطلاعاتی که در قدم سوم ساختید جایگزین کنید (به پیشوند جدید حساب مقصد دقت کنید):localhost درست کار میکند. فقط در معدودی از هاستها که دیتابیس روی سرور جداست، باید آدرس اختصاصی هاست را بگذارید؛ این آدرس را از پشتیبانی یا مستندات هاست بگیرید.REPLACE ساده در SQL این شمارش را بهروز نمیکند و در نتیجه ویجتها، تنظیمات قالب و بخشی از دادهها خراب میشوند. همیشه از افزونه یا WP-CLI که سریالایز را درست پردازش میکنند استفاده کنید و ستون guid را دست نزنید.| معیار | روش دستی (phpMyAdmin + File Manager) | ابزار رسمی تبدیل DirectAdmin | افزونه (Duplicator / All-in-One) |
|---|---|---|---|
| سطح دسترسی لازم | کاربر هاست | مدیر سرور (root) | کاربر هاست |
| سطح مهارت لازم | متوسط | بالا / فنی | مبتدیپسند |
| کنترل روی جزئیات | کامل | کامل (سطح اکانت) | محدودتر |
| مدیریت دادهی سریالایز | دستی (با ابزار search-replace) | خودکار | خودکار هنگام import |
| مناسب برای | یک سایت روی هاست اشتراکی | انتقال انبوه چند اکانت | سرعت و کمترین خطا |
| محدودیت حجم (نسخه رایگان) | بستگی به هاست | ندارد | در دیتابیسهای خیلی بزرگ محدود |
cpanel_to_da) قدرتمند است اما فقط در سطح مدیر سرور کار میکند و برای کاربر عادی هاست در دسترس نیست. اگر سرعت و کمترین خطا برایتان مهم است، افزونهای مثل Duplicator یا All-in-One کار را ساده میکند؛ فقط حواستان به محدودیت حجم نسخهی رایگان باشد. در هر سه حالت، بکاپگرفتن قبل از شروع واجب است.wp-config.php اشتباه است. نام دیتابیس، یوزر و پسورد را با همان پیشوند جدید حساب مقصد دوباره بررسی کنید. راهنمای کامل رفع این مشکل را در مطلب رفع خطای اتصال به دیتابیس نوشتهایم.public_htmlِ درست قرار نگرفتهاند، یا آدرسهای قدیمی در دیتابیس مانده، یا نسخهی PHP دو پنل فرق دارد. اول مسیر فایلها را چک کنید، سپس در صورت تغییر دامنه search-replace را کامل انجام دهید و در نهایت نسخهی PHP سازگار با وردپرس (نسخه 8.1 یا بالاتر) را انتخاب کنید.wp-content/uploads کامل آپلود نشده یا آدرس تصاویر هنوز به دامنهی قبلی اشاره میکند. کامل بودن پوشهی uploads را چک کنید و اگر دامنه عوض شده، دوباره search-replace را اجرا کنید.public_html یا مجوز فایلها میتواند وقتگیر شود. سوم، اگر دامنه عوض شود و آدرسها با ابزار نادرست تغییر کنند، دادهی سریالایز خراب میشود. چهارم، انتشار DNS آنی نیست و ممکن است تا دو روز کاربران نسخهی قدیمی را ببینند. و در نهایت، تفاوت نسخهی PHP بین دو پنل میتواند خطاهای سازگاری قالب یا افزونه ایجاد کند که باید جداگانه رفع شوند.wp-config.php را با نام پیشونددارِ جدید حساب مقصد تطبیق میدهیم، بعد مطمئن میشویم فایلها در پوشهی public_htmlِ درست قرار گرفتهاند و در پایان نسخهی PHP سازگار را انتخاب میکنیم. همین چند قدم ساده، اکثر مشکلات بعد از مهاجرت را برطرف میکند.اگر پیش از شروع از فایلها و دیتابیس بکاپ کامل بگیرید، خیر. کل فرایند یعنی «کپی» کردن سایت روی پنل جدید؛ تا وقتی از سالم بودن نسخهی مقصد مطمئن نشدهاید، اکانت مبدأ را دستنخورده نگه دارید تا در صورت هر مشکلی راه بازگشت داشته باشید.
مهمترین تفاوت عملی، مسیر ریشهی سایت است. در سیپنل فایلها در public_html اصلی حساب قرار دارند، اما در دایرکتادمین مسیر هر دامنه به شکل domains/domain.com/public_html است. باید فایلها را در پوشهی درستِ همان دامنه آپلود کنید.
چون در هر دو پنل نام دیتابیس و کاربر با پیشوند نامکاربری حساب ساخته میشود و نامکاربری حساب مقصد با مبدأ فرق دارد. پس نام دیتابیس و کاربر جدید پیشوند تازهای میگیرند و باید همان مقادیر جدید را در wp-config.php بگذارید.
این ابزار (cpanel_to_da) فقط در سطح مدیر سرور و با دسترسی root کار میکند و بکاپ pkgacct سیپنل را به فرمت دایرکتادمین تبدیل میکند. اگر روی هاست اشتراکی هستید به آن دسترسی ندارید و باید از روش دستی یا افزونه استفاده کنید.
در بیشتر هاستهای سیپنل و دایرکتادمین مقدار localhost درست است، چون دیتابیس روی همان سرور سایت قرار دارد. فقط در هاستهایی که دیتابیس روی سرور جداست باید آدرس اختصاصی هاست را بگذارید که آن را از پشتیبانی یا مستندات هاست میگیرید.
خیر. اگر فقط کنترلپنل عوض شده و دامنه ثابت مانده، معمولاً نیازی به تغییر آدرسها نیست. search-replace فقط زمانی لازم است که آدرس یا دامنهی سایت تغییر کرده باشد.
توصیه نمیشود. وردپرس بخشی از دادهها را سریالایزشده ذخیره میکند و REPLACE خام SQL شمارش کاراکتر آنها را خراب میکند. بهجای آن از افزونهی Better Search Replace یا دستور wp search-replace با فلگ precise و skip-columns=guid استفاده کنید.
انتشار DNS معمولاً بین چند ساعت تا ۴۸ ساعت طول میکشد. در این بازه ممکن است بعضی کاربران هنوز نسخهی قدیمی را ببینند. تا کاملشدن این فرایند صبور باشید و اکانت مبدأ را حذف نکنید.
معمولاً یا فایلها در پوشهی public_html درست قرار نگرفتهاند، یا آدرسهای قدیمی در دیتابیس مانده، یا نسخهی PHP پنل مقصد ناسازگار است. اول مسیر فایلها را بررسی کنید، بعد در صورت تغییر دامنه search-replace را کامل کنید و نسخهی PHP مناسب (8.1 یا بالاتر) را انتخاب کنید.