# انتقال وردپرس به هاست یا دامنه‌ی جدید بدون افت سئو

- منبع: https://di9.ir/blog/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%d9%88%d8%b1%d8%af%d9%be%d8%b1%d8%b3-%d8%a8%d9%87-%d9%87%d8%a7%d8%b3%d8%aa-%d8%ac%d8%af%db%8c%d8%af
- سایت: دیباگ
- نویسنده: danidiba
- تاریخ انتشار: 2026-08-16
- آخرین به‌روزرسانی: 2026-08-16

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

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

## انتقال وردپرس چند مرحله دارد؟#

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

![پنج مرحله‌ی انتقال وردپرس از پشتیبان کامل تا انتقال، آزمایش، تغییر نیم‌سرور و ریدایرکت](/blog/wp-content/uploads/2026/09/fig-w08-1.svg)

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

## قبل از انتقال چه کارهایی لازم است؟#

یک پشتیبان کامل بیرون از هر دو هاست و فهرستی از چیزهایی که خارج از وردپرس تنظیم شده‌اند.

- **پشتیبان کامل:** همه‌ی فایل‌های سایت و یک خروجی از دیتابیس. روش خودکارش در [بک‌آپ خودکار دیتابیس روی سی‌پنل](/blog/بک-اپ-خودکار-دیتابیس-روی-سی-پنل) آمده است.

- **صندوق‌های ایمیل:** اگر ایمیل دامنه روی همان هاست است، باید روی هاست تازه هم ساخته شود؛ وگرنه بعد از تغییر نیم‌سرور ایمیل‌ها گم می‌شوند.

- **کرون‌جاب‌ها:** دستورهای بخش Cron Jobs سی‌پنل را یادداشت کنید.

- **نسخه‌ی PHP و محدودیت‌ها:** نسخه‌ی PHP هاست تازه را هم‌سطح یا جدیدتر از هاست قبلی بگذارید.

- **TTL:** TTL مدتی است که سرورهای دیگر اطلاعات دامنه را در حافظه نگه می‌دارند. اگر رکوردهای دامنه را خودتان مدیریت می‌کنید، یکی دو روز قبل از انتقال آن را کم کنید تا تغییر سریع‌تر پخش شود.

## فایل‌ها و دیتابیس را چطور منتقل کنیم؟#

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

برای انتقال دستی:

- در File Manager هاست قبلی، محتویات `public_html` را با گزینه‌ی Compress به یک فایل zip تبدیل کنید و دانلود کنید.

- در phpMyAdmin هاست قبلی، دیتابیس را انتخاب کنید و از سربرگ Export خروجی SQL بگیرید.

- در هاست تازه دیتابیس و کاربر بسازید و کاربر را به دیتابیس وصل کنید؛ همان کاری که در [نصب وردپرس روی هاست سی‌پنل](/blog/نصب-وردپرس-روی-هاست-سی-پنل) انجام می‌شود.

- فایل zip را در `public_html` هاست تازه بارگذاری و Extract کنید.

- در phpMyAdmin هاست تازه، از سربرگ Import فایل SQL را وارد کنید. اگر دیتابیس بزرگ‌تر از سقف بارگذاری است، از پشتیبانی هاست بخواهید آن را وارد کند.

- در `wp-config.php` اطلاعات دیتابیس تازه را بنویسید.

PHPکپی`define( &#039;DB_NAME&#039;, &#039;newuser_wpdb&#039; );
define( &#039;DB_USER&#039;, &#039;newuser_wpuser&#039; );
define( &#039;DB_PASSWORD&#039;, &#039;CHANGE_ME&#039; );
define( &#039;DB_HOST&#039;, &#039;localhost&#039; );`

> مقدار $table_prefix در همین فایل را دست نزنید. باید دقیقاً با پیشوند جدول‌هایی که وارد کرده‌اید یکی باشد، وگرنه وردپرس صفحه‌ی نصب تازه نشان می‌دهد.

## چطور سایت را پیش از تغییر نیم‌سرور آزمایش کنیم؟#

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

- نشانی IP هاست تازه را از سی‌پنل همان هاست پیدا کنید.

- در ویندوز فایل `C:\Windows\System32\drivers\etc\hosts` را با دسترسی مدیر در ویرایشگر متن باز کنید.

- یک خط به شکل `203.0.113.10 example.com www.example.com` اضافه کنید؛ IP و دامنه را با مقدار واقعی عوض کنید.

- مرورگر را کامل ببندید و سایت را باز کنید. حالا فقط شما نسخه‌ی هاست تازه را می‌بینید.

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

- بعد از آزمایش، آن خط را پاک کنید.

در این مرحله ممکن است مرورگر درباره‌ی گواهی هشدار بدهد، چون گواهی رایگان هاست تازه تا وقتی دامنه به آن اشاره نکند صادر نمی‌شود. این طبیعی است. اگر صفحه‌ی سفید یا خطای دیتابیس دیدید، [رفع خطاهای رایج وردپرس](/blog/خطاهای-رایج-وردپرس) کمک می‌کند.

## اگر دامنه عوض می‌شود چه کارهای دیگری لازم است؟#

سه کار اضافه: جایگزینی نشانی در دیتابیس، ریدایرکت ۳۰۱ از دامنه‌ی قدیم و اعلام تغییر در سرچ کنسول.

**جایگزینی نشانی.** داده‌ی سریالی قالبی است که PHP با آن آرایه‌ها را به متن تبدیل می‌کند و طول هر متن را هم در آن ثبت می‌کند. به همین دلیل نشانی را با دستور REPLACE مستقیم در SQL عوض نکنید؛ از افزونه‌ای استفاده کنید که جایگزینی با پشتیبانی از داده‌ی سریالی انجام می‌دهد. اگر هاست دسترسی ترمینال و WP-CLI دارد (اختیاری)، این دستور همان کار را می‌کند؛ اول با `--dry-run` ببینید چه چیزی تغییر می‌کند:

Bashکپی`wp search-replace &#039;https://old-example.com&#039; &#039;https://new-example.com&#039; --all-tables --dry-run
wp search-replace &#039;https://old-example.com&#039; &#039;https://new-example.com&#039; --all-tables`

**ریدایرکت دائمی.** دامنه‌ی قدیم را روی هاستی نگه دارید و این قاعده را در `.htaccess` آن بگذارید تا هر نشانی قدیمی به همان صفحه در دامنه‌ی تازه برود:

Apacheکپی`RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-example\.com$ &#91;NC]
RewriteRule ^(.*)$ https://new-example.com/$1 &#91;L,R=301]`

**سرچ کنسول.** دامنه‌ی تازه را در سرچ کنسول اضافه و تأیید کنید، از ابزار تغییر نشانی (Change of Address) در ویژگی دامنه‌ی قدیم استفاده کنید و نقشه‌ی سایت تازه را ثبت کنید. بقیه‌ی نکته‌های نشانی و canonical را در [سئوی فنی وردپرس](/blog/سئوی-فنی-وردپرس) ببینید.

## بعد از انتقال چه چیزهایی را بررسی کنیم؟#

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

موردچه چیزی را ببینیدپیوندهای یکتادر تنظیمات پیوندهای یکتا یک بار ذخیره را بزنیدگواهی SSLبعد از تغییر نیم‌سرور، صادرشدن گواهی را در SSL/TLS Status ببینیدایمیلیک فرم تماس و ایمیل بازیابی رمز را امتحان کنیدکرون‌جابدستورها را روی هاست تازه دوباره بسازیدکشکش افزونه و کش هاست را پاک کنیدسرویس‌های بیرونیاتصال درگاه پرداخت یا سرویس هوش مصنوعی را از سرور تازه امتحان کنید

مورد آخر را دست‌کم نگیرید. اگر سایت چت‌بات یا افزونه‌ی هوش مصنوعی دارد، ممکن است سرور تازه نتواند به آن سرویس وصل شود؛ نکته‌هایش در [چت‌بات پشتیبانی سایت وردپرسی](/blog/چت-بات-پشتیبانی-سایت-وردپرسی) آمده است.

## انتقال وردپرس به کجا می‌رود#

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

برای آماده‌بودن:

- نشانی دامنه را در کد قالب یا افزونه‌ی شخصی ننویسید؛ از توابع وردپرس برای ساختن نشانی استفاده کنید.

- فهرستی از تنظیمات بیرون از وردپرس، مثل ایمیل، کرون و رکوردهای دامنه، نگه دارید.

- بازگرداندن پشتیبان را هر چند ماه یک بار روی یک زیردامنه امتحان کنید؛ این همان تمرین انتقال است.

## خلاصه#

- ترتیب: پشتیبان، انتقال، آزمایش پنهان، تغییر نیم‌سرور، ریدایرکت.

- پیشوند جدول در `wp-config.php` باید با دیتابیس واردشده یکی باشد.

- سایت را با فایل hosts آزمایش کنید، پیش از آنکه کاربران ببینند.

- در تغییر دامنه، نشانی‌ها را با ابزار آگاه از داده‌ی سریالی عوض کنید.

- ریدایرکت ۳۰۱ دامنه‌ی قدیم را دست‌کم یک سال نگه دارید.