درود بر شما. من محمدصدرا حسینی هستم، کارشناس سئو در «وزیر سئو».
مهاجرت (Migration) وبسایت وردپرسی، یکی از پرریسکترین عملیاتهای فنی در سئو محسوب میشود. یک اشتباه کوچک میتواند منجر به از دست رفتن دادهها، قطعی سایت (Downtime) و آسیب جدی به رتبههای شما شود. اگرچه ابزارهای زیادی در لیست بهترین افزونه های بکاپ وردپرس وجود دارند، اما فرآیند مهاجرت نیازمند دقتی فراتر از یک پشتیبانگیری ساده است.
افزونه Duplicator دقیقاً برای این هدف طراحی شده است: انتقال کامل، دقیق و بدون خطای یک سایت از مبدأ به مقصد. در این راهنمای جامع و اقداممحور، فرآیند کامل کار با Duplicator را به صورت گام به گام و تخصصی بررسی خواهیم کرد.
جدول کاربردی (نقشه راه مهاجرت)
پیش از ورود به جزئیات فنی، این جدول یک نقشه راه (Roadmap) کامل از فرآیندی که در پیش داریم ارائه میدهد. درک تصویر بزرگ، کلید موفقیت در اجرای جزئیات است.
| مرحله (Phase) | اقدام کلیدی (Key Action) | اهمیت (از دیدگاه سئو) |
| آمادهسازی | تهیه بکاپ جداگانه و آمادهسازی هاست مقصد | مدیریت ریسک؛ جلوگیری از هرگونه از دست رفتن داده (Data Loss) |
| مرحله ۱: ساخت بسته | ایجاد پکیج (Archive + Installer) در سایت مبدأ | تضمین یکپارچگی (Integrity) کامل فایلها و دیتابیس |
| مرحله ۲ و ۳: انتقال | آپلود فایلها در مقصد و ساخت دیتابیس خالی | آمادهسازی بستر فنی برای بازسازی سایت در محیط جدید |
| مرحله ۴: نصب | اجرای installer.php و تست اتصال دیتابیس | حساسترین مرحله؛ اجرای عملیات Search & Replace برای بهروزرسانی URLها |
| مرحله ۵: پس از مهاجرت | حذف فایلهای نصب، بازسازی پیوند یکتا و تست کامل | ایمنسازی سایت و اطمینان از عدم وجود لینک شکسته (۴۰۴) |
افزونه Duplicator چیست و چرا بهترین گزینه برای مهاجرت (Migration) است؟
Duplicator یک افزونه قدرتمند وردپرسی برای پشتیبانگیری (Backup) و مهاجرت (Migration) سایت است. برخلاف بسیاری از افزونههای بکاپ که صرفاً فایلها و دیتابیس را ذخیره میکنند، Duplicator کل سایت وردپرس شما (شامل فایلها، دیتابیس، پلاگینها، تمها و تنظیمات وردپرس) را در قالب یک بسته واحد و قابل اجرا بستهبندی میکند.
دلیل برتری Duplicator برای مهاجرت، کاهش چشمگیر متغیرهای خطا است. فرآیند مهاجرت دستی مملو از چالشهای فنی است (مانند جستجو و جایگزینی (Search & Replace) آدرسهای URL در دیتابیس، تنظیمات wp-config.php، و مشکلات انکودینگ دیتابیس). Duplicator این فرآیندها را خودکارسازی میکند و اطمینان میدهد که سایت در مقصد جدید دقیقاً مشابه مبدأ عمل خواهد کرد.
مزایای کلیدی Duplicator برای مهاجرت:
- اطمینان (Reliability): با بستهبندی همهچیز در یک پکیج، ریسک فراموش شدن فایلها یا جداول دیتابیس نزدیک به صفر است.
- کارایی (Efficiency): فرآیند نصب در مقصد جدید بسیار سریع و تنها با چند کلیک انجام میشود.
- دقت فنی: این افزونه به طور هوشمند تمام مسیرهای فایل و URLهای سایت را در دیتابیس و فایلهای کانفیگ بهروزرسانی میکند؛ این اقدام برای جلوگیری از خطاهای ۴۰۴ و حفظ ساختار لینکدهی داخلی (Internal Linking) پس از انتقال، حیاتی است.
درک مفهوم «بسته» (Package) در Duplicator: فایل Archive و Installer
زمانی که شما از Duplicator یک «بسته» یا پکیج میسازید، در واقع دو فایل خروجی دریافت میکنید که این دو فایل، کلید موفقیت در مهاجرت هستند:
۱. فایل آرشیو (Archive): این یک فایل فشرده (معمولاً با فرمت .zip) است. این فایل شامل تمام فایلهای فیزیکی سایت شما (پوشههای wp-content، wp-includes، wp-admin و…) و همچنین یک خروجی کامل از دیتابیس (فایل database.sql) میباشد.
۲. فایل نصبکننده (Installer): این یک فایل PHP (معمولاً installer.php) است. این فایل در واقع یک اسکریپت مستقل است. شما این فایل را به همراه فایل آرشیو در هاست مقصد آپلود میکنید. با فراخوانی installer.php در مرورگر، این اسکریپت شما را گام به گام برای بازگشایی آرشیو، ساخت و اتصال به دیتابیس جدید، و اجرای فرآیند جستجو و جایگزینی (Search & Replace) راهنمایی میکند.
نکته کلیدی: قدرت Duplicator در همین فایل installer.php نهفته است. این فایل بدون نیاز به نصب بودن وردپرس در مقصد، کار میکند و کل فرآیند راهاندازی را به صورت خودکار انجام میدهد.
تفاوت Duplicator با سایر روشهای بکاپگیری و انتقال
درک تفاوت Duplicator با سایر روشها به شما کمک میکند تا بر اساس نیاز خود، بهترین تصمیم را اتخاذ کنید. تفاوت اصلی در هدف نهفته است: Duplicator برای «مهاجرت» بهینه شده است، در حالی که بسیاری از ابزارهای دیگر برای «بکاپگیری مداوم» طراحی شدهاند.
در اینجا یک جدول مقایسهای برای شفافسازی این تفاوتها ارائه شده است:
| ویژگی / روش | Duplicator (متمرکز بر مهاجرت) | افزونههای بکاپ (مانند UpdraftPlus) | انتقال دستی (Manual Migration) |
| هدف اصلی | انتقال کامل سایت از مبدأ A به مقصد B | پشتیبانگیری زمانبندی شده و بازیابی (Restore) در همان سایت | انتقال کامل با کنترل صددرصدی فنی |
| فرآیند | بستهبندی (Archive + Installer) | ایجاد فایلهای بکاپ (دیتابیس، فایلها) | دانلود دستی فایلها (FTP) و خروجی گرفتن دیتابیس (phpMyAdmin) |
| نیاز فنی | کم (فقط آپلود دو فایل و دنبال کردن اسکریپت) | متوسط (نیاز به نصب وردپرس در مقصد برای بازیابی) | بسیار بالا (نیاز به دانش دیتابیس، FTP، و wp-config) |
| مدیریت URL | خودکار و بسیار دقیق در حین نصب | معمولاً نیاز به ابزار جانبی یا پلاگین مجزا دارد | کاملاً دستی (ریسک بالای خطا و فراموشی) |
| مورد استفاده | تغییر هاست، انتقال از لوکالهاست به سرور، ایجاد سایت تستی (Staging) | بازیابی از فاجعه (Disaster Recovery)، بکاپهای روزانه | سناریوهای بسیار پیچیده که نیاز به تغییرات دستی در حین انتقال دارند |
بررسی نسخههای رایگان (Lite) و پولی (Pro) افزونه
Duplicator در دو نسخه ارائه میشود که هر کدام برای نیازهای مشخصی طراحی شدهاند:
نسخه رایگان (Duplicator Lite):
- کاربرد: این نسخه برای اکثر وبسایتهای کوچک تا متوسط کاملاً کافی است.
- قابلیتها: تمام قابلیتهای اصلی مهاجرت، یعنی ساخت بسته (Archive + Installer) و انتقال کامل سایت را ارائه میدهد.
- محدودیت: محدودیت اصلی این نسخه در مدیریت سایتهای بسیار حجیم است. اگر حجم فایلها یا دیتابیس شما از یک حد مشخص (که بستگی به منابع هاست شما دارد) بیشتر باشد، ممکن است فرآیند ساخت بسته با خطا (Timeout) مواجه شود.
نسخه پولی (Duplicator Pro):
- کاربرد: ضروری برای سایتهای بزرگ، فروشگاههای ووکامرسی (WooCommerce)، و آژانسهایی که مکرراً سایتها را جابجا میکنند.
- قابلیتهای کلیدی (که در نسخه رایگان نیست):
- پشتیبانگیری زمانبندی شده (Scheduled Backups): امکان تنظیم بکاپهای خودکار.
- پشتیبانی از فضاهای ابری: ذخیره مستقیم بکاپها در Google Drive, Dropbox, Amazon S3 و…
- پشتیبانی از سایتهای بزرگ: فرآیند بستهبندی بهینهتر برای جلوگیری از Timeout در سایتهای حجیم.
- انتقال شبکهای (Multisite): قابلیت مهاجرت سایتهای وردپرس چندشبکهای.
- نصب درگ-اند-دراپ (Drag & Drop): نصب سادهتر در مقصد.
تصمیمگیری (Action Point): برای یک مهاجرت یکباره (One-time Migration) یک سایت استاندارد، نسخه Lite معمولاً کفایت میکند. اگر سایت شما یک فروشگاه بزرگ با دیتابیس سنگین است یا نیاز به بکاپهای مداوم در فضای ابری دارید، سرمایهگذاری روی نسخه Pro کاملاً منطقی و ضروری است.
نتیجهگیری: Duplicator ابزار شماره یک برای انتقال امن
در فرآیند سئو، حفظ یکپارچگی (Integrity) سایت در حین تغییرات فنی مانند مهاجرت، یک اصل اساسی است. Duplicator با تبدیل فرآیند پیچیده و پرخطر انتقال به یک عملیات دو فایلی (Archive و Installer)، ریسک خطای انسانی را به حداقل میرساند. این افزونه اطمینان میدهد که ساختار URLها، دیتابیس و فایلهای شما به درستی منتقل شده و از آسیب دیدن اعتبار (Authority) و اعتماد (Trust) سایت شما نزد گوگل جلوگیری میکند.
استفاده از Duplicator نه یک انتخاب، بلکه یک استراتژی هوشمندانه برای حفاظت از دارایی دیجیتال شما در زمان جابجایی است.
پیشنیازها: چکلیست حیاتی قبل از شروع انتقال (برای جلوگیری از فاجعه!)
قبل از اینکه حتی افزونه Duplicator را نصب کنید، باید اطمینان حاصل کنید که هم مبدأ و هم مقصد شما برای این جابجایی آماده هستند. این چکلیست، سپر دفاعی شما در برابر خطاهای رایج است.
اطمینان از سلامت سایت مبدأ و بهروزرسانیها
شما هرگز یک خانه با لولههای خراب را به مکانی جدید اسبابکشی نمیکنید. در مورد وبسایت نیز همینطور است. انتقال یک سایت ناسالم یا قدیمی، صرفاً مشکلات را به سرور جدید منتقل میکند.
- بهروزرسانی کامل: اطمینان حاصل کنید که هسته وردپرس، تمام افزونهها (Plugins) و قالب (Theme) شما به آخرین نسخه موجود بهروزرسانی شدهاند. این کار سازگاری را افزایش داده و ریسک تداخل را کاهش میدهد.
- پاکسازی (Cleanup): افزونهها و قالبهای غیرفعال و بلااستفاده را کاملاً حذف کنید. این موارد حجم «بسته» (Package) نهایی شما را بیهوده افزایش میدهند و میتوانند حفرههای امنیتی ایجاد کنند.
- بررسی سلامت: مطمئن شوید سایت مبدأ شما به درستی کار میکند. هیچ خطای آشکاری (مانند خطای 500 یا صفحه سفید) وجود نداشته باشد.
دسترسی کامل به هاست مبدأ (برای دانلود فایلها)
شما باید بتوانید فایلهای بستهبندی شده توسط Duplicator را از سایت مبدأ خود دانلود کنید.
- نوع دسترسی: شما به دسترسی مدیریت فایل (File Manager) از طریق cPanel/DirectAdmin یا دسترسی FTP/SFTP به هاست مبدأ نیاز دارید.
- چرا این دسترسی حیاتی است؟ پس از اینکه Duplicator دو فایل Archive و Installer را ساخت، شما باید این دو فایل را روی سیستم لوکال خود دانلود کنید تا بتوانید آنها را در هاست مقصد آپلود نمایید. بدون این دسترسی، شما عملاً در مبدأ گیر افتادهاید.
آمادهسازی هاست مقصد (دسترسی به cPanel/DirectAdmin و ساخت دیتابیس)
هاست مقصد شما باید یک بوم خالی و آماده برای پذیرش سایت جدید باشد. فایل installer.php افزونه Duplicator برای اجرا، به یک محیط آماده نیاز دارد.
- دسترسی به کنترل پنل مقصد: شما باید به cPanel، DirectAdmin یا هر پنل مدیریتی دیگری در هاست مقصد دسترسی کامل داشته باشید.
- دسترسی به فایل منیجر/FTP: برای آپلود دو فایل Duplicator در مقصد به این دسترسی نیاز است.
- مهمترین اقدام: شما باید یک دیتابیس (Database) خالی در هاست مقصد ایجاد کنید.
نکته فنی بسیار مهم: فایل installer.php دیتابیس را برای شما ایجاد نمیکند؛ بلکه اطلاعات سایت مبدأ را درون یک دیتابیس موجود ایمپورت میکند.
اقدام لازم: وارد کنترل پنل هاست مقصد شوید (مثلاً بخش MySQL Databases در cPanel)، یک دیتابیس جدید و یک کاربر (User) جدید برای آن بسازید و کاربر را به دیتابیس متصل کنید (Assign/Grant all privileges).
شما باید این ۴ مورد را یادداشت کنید، زیرا فایل نصبکننده در مرحله بعد از شما خواهد پرسید: ۱. نام دیتابیس (Database Name) ۲. نام کاربری دیتابیس (Database User) ۳. رمز عبور دیتابیس (Database Password) ۴. هاست دیتابیس (Database Host – که معمولاً localhost است)
نکته تجربی: اهمیت یک بکاپ جداگانه (خارج از Duplicator)
این یک اصل حیاتی در مدیریت ریسک است: هرگز به یک راهحل واحد برای بکاپگیری در زمان عملیات حساس اعتماد نکنید.
اگرچه Duplicator خود یک ابزار بکاپگیری است، اما منطق و تجربه حکم میکند که شما یک «پلن B» داشته باشید.
- چرا؟ ممکن است فرآیند ساخت بسته Duplicator به دلیل کمبود منابع هاست مبدأ با خطا مواجه شود، یا بسته ساختهشده به هر دلیلی ناقص (Corrupted) باشد.
- اقدام لازم: قبل از شروع کار با Duplicator، یک بکاپ کامل و جداگانه از سایت خود تهیه کنید. بهترین روش، استفاده از ابزار بکاپگیری خود هاست (مثلاً Full Backup در cPanel) یا استفاده از یک افزونه بکاپگیری معتبر دیگر (مانند UpdraftPlus) و ذخیره آن در فضایی امن (مانند Google Drive یا سیستم شخصی) است.
این بکاپ جداگانه، بیمهنامه شماست که تضمین میکند در صورت بروز هرگونه فاجعه غیرمنتظره، شما همچنان یک نسخه سالم از دارایی دیجیتال خود در اختیار دارید.
مرحله اول: نصب Duplicator و ساخت بسته مهاجرت در سایت مبدأ
هدف در این مرحله، بستهبندی کل وبسایت (فایلها و دیتابیس) در دو فایل مجزا است که ستون فقرات فرآیند مهاجرت ما خواهند بود.
نصب و فعالسازی افزونه Duplicator از مخزن وردپرس
این گام، یک فرآیند استاندارد نصب افزونه است:
۱. وارد پیشخوان وردپرس سایت مبدأ خود شوید. ۲. به بخش «افزونهها» > «افزودن» بروید. ۳. در کادر جستجو، عبارت “Duplicator” را جستجو کنید. ۴. افزونه «Duplicator – WordPress Migration & Backups Plugin» را پیدا کرده، آن را «نصب» و سپس «فعالسازی» نمایید. ۵. پس از فعالسازی، یک گزینه جدید به نام «Duplicator» به منوی پیشخوان شما اضافه خواهد شد.
شروع فرآیند ساخت بسته (Create New Package)
اکنون زمان ساخت بسته مهاجرت است:
۱. از منوی پیشخوان وردپرس، به «Duplicator» > «بستهها» (Packages) بروید. ۲. در گوشه بالا سمت چپ، روی دکمه «ایجاد جدید» (Create New) کلیک کنید.
۳. در این مرحله (Setup)، Duplicator به شما اجازه میدهد نامی برای بسته خود انتخاب کنید. همچنین میتوانید فایلها یا جداول دیتابیس خاصی را از فرآیند بستهبندی مستثنی (Filter/Exclude) کنید.
نکته تجربی: اگر پوشههایی حاوی بکاپهای سنگین قدیمی (مثلاً بکاپهای سایر افزونهها) در هاست خود دارید، حتماً آنها را در بخش «Archive» > «Files» فیلتر کنید تا حجم نهایی بسته به شدت کاهش یابد و فرآیند ساخت با موفقیت انجام شود.
۴. پس از اعمال تنظیمات دلخواه (که معمولاً تنظیمات پیشفرض برای اکثر سایتها کافی است)، روی دکمه «بعدی» (Next) کلیک کنید.
اسکن و بررسی اولیه سایت (System Scan) و رفع مشکلات احتمالی
این مرحله، حیاتیترین بخش در ساخت بسته و وجه تمایز Duplicator است. افزونه در این مرحله یک اسکن کامل از سرور و سایت شما انجام میدهد تا مطمئن شود منابع کافی برای ساخت موفقیتآمیز بسته وجود دارد.
- اسکن سرور (Server): بررسی میکند که آیا منابع PHP، مجوزهای فایل (Permissions) و تنظیمات سرور (مانند open_basedir) برای اجرای فرآیند مناسب هستند یا خیر.
- اسکن فایلها (Files): حجم کل فایلها و تعداد آنها را بررسی میکند.
- اسکن دیتابیس (Database): حجم جداول دیتابیس را بررسی میکند.
تحلیل نتایج اسکن:
- علامت سبز (Good): به معنای آن است که همه چیز ایدهآل است.
- علامت اخطار (Warning): رایجترین نتیجه است. این به معنای شکست فرآیند نیست، بلکه Duplicator به شما هشدار میدهد که ممکن است در سایتهای حجیم یا سرورهای با منابع محدود، فرآیند ساخت بسته با خطا (Timeout) مواجه شود.
اقدام لازم (Action Point): اگر با اخطار (Warning) مواجه شدید (مثلاً برای حجم فایلها یا محدودیتهای سرور)، نگران نشوید. در اکثر موارد، میتوانید تیک «Yes. Continue with the build process» را در پایین صفحه زده و ادامه دهید. اگر فرآیند ساخت شکست خورد، باید به عقب بازگردید و فایلهای حجیم و غیرضروری را (همانطور که در مرحله قبل گفته شد) فیلتر کنید.
پس از بررسی نتایج اسکن، روی دکمه «ساخت» (Build) کلیک کنید.
ساخت نهایی بسته: دانلود فایل Archive (zip.) و Installer.php
پس از کلیک بر روی «Build»، افزونه شروع به فشردهسازی فایلها و خروجی گرفتن از دیتابیس میکند. این فرآیند بسته به حجم سایت شما و سرعت سرور، ممکن است از چند ثانیه تا چند دقیقه طول بکشد.
پس از اتمام موفقیتآمیز فرآیند، شما به صفحهای هدایت میشوید که دو فایل حیاتی را برای دانلود ارائه میدهد:
۱. فایل آرشیو (Archive): یک فایل zip. حجیم که شامل تمام فایلهای سایت و نسخه sql دیتابیس شماست. (مثال: 20251105_mysite_archive.zip) ۲. فایل نصبکننده (Installer): یک فایل installer.php کمحجم که در واقع اسکریپت جادویی Duplicator برای نصب بسته در مقصد است.
اقدام ضروری: شما باید هر دو فایل را روی سیستم شخصی (Local Computer) خود دانلود کنید.
مرحله دوم: انتقال فایلهای بسته به هاست جدید (مقصد)
شما دو فایل در اختیار دارید و باید آنها را در سرور مقصد خود قرار دهید. دو روش اصلی برای این کار وجود دارد:
روش اول (آسان): آپلود مستقیم از طریق File Manager در cPanel یا DirectAdmin
این روش برای فایلهای آرشیو (Archive) با حجم کم تا متوسط (مثلاً زیر ۲۰۰ مگابایت) ایدهآل است، زیرا نیازی به نرمافزار جانبی ندارد.
۱. وارد کنترل پنل هاست مقصد خود (مانند cPanel یا DirectAdmin) شوید. ۲. به بخش «File Manager» (مدیریت فایل) بروید. ۳. به مسیری که در نکته بعدی (ریشه سایت) توضیح داده میشود، بروید. ۴. از نوار ابزار بالا، گزینه «Upload» را انتخاب کنید. ۵. هر دو فایل Archive.zip و installer.php را انتخاب و آپلود نمایید.
هشدار فنی: این روش به محدودیتهای آپلود سرور (upload_max_filesize) وابسته است. اگر فایل Archive شما بسیار حجیم است (مثلاً ۱ گیگابایت)، این روش به احتمال زیاد با خطا مواجه خواهد شد، حتی اگر ظاهراً موفقیتآمیز به نظر برسد. در این صورت، فایل آپلود شده ناقص (Corrupted) خواهد بود.
روش دوم (مطمئن): انتقال فایلهای حجیم با استفاده از FTP (مانند FileZilla)
این روش حرفهای و مطمئن برای انتقال فایلها، بهخصوص فایلهای حجیم، است. FTP (پروتکل انتقال فایل) محدودیتهای آپلود مبتنی بر وب (HTTP) را ندارد و برای این کار ساخته شده است.
۱. شما به یک نرمافزار کلاینت FTP مانند FileZilla (که رایگان و معتبر است) نیاز دارید. ۲. اطلاعات اتصال FTP هاست مقصد خود را (شامل Host, Username, Password, و Port) از میزبان خود دریافت کنید. ۳. در FileZilla، به هاست مقصد متصل شوید. ۴. در پنل سمت چپ (Local Site)، فایلهای Archive.zip و installer.php را روی سیستم خود پیدا کنید. ۵. در پنل سمت راست (Remote Site)، به مسیر ریشه سایت (Root) بروید. ۶. هر دو فایل را از پنل چپ به پنل راست بکشید و رها کنید (Drag and Drop) تا فرآیند آپلود آغاز شود.
نکته کلیدی: فایلها باید در ریشه (Root) دامنه جدید آپلود شوند
این مهمترین بخش این مرحله است. محل آپلود فایلهای شما تعیین میکند که سایت در چه آدرسی نصب شود.
«ریشه» (Root) یا دایرکتوری عمومی، پوشهای است که وب سرور فایلهای سایت شما را از آنجا به بازدیدکنندگان نمایش میدهد.
- در cPanel: این پوشه تقریباً همیشه public_html نام دارد.
- در DirectAdmin: این پوشه معمولاً domains/yourdomain.com/public_html است.
اقدام لازم: شما باید هر دو فایل (Archive.zip و installer.php) را مستقیماً داخل پوشه public_html (یا معادل آن) آپلود کنید.
اشتباه رایج: فایلها را در یک زیرپوشه (مثلاً public_html/new-site) آپلود نکنید، مگر اینکه دقیقاً قصد داشته باشید سایت شما در آدرس yourdomain.com/new-site بارگذاری شود.
نکته: اگر هاست مقصد شما کاملاً خالی نیست و فایلهای پیشفرض هاستینگ (مانند index.html یا cgi-bin) در آن وجود دارد، جای نگرانی نیست. میتوانید آنها را حذف کنید، زیرا Duplicator در مرحله بعد سایت شما را به طور کامل جایگزین خواهد کرد.
مرحله سوم: ساخت دیتابیس جدید در هاست مقصد
این مرحله در کنترل پنل هاست مقصد شما انجام میشود و شامل ایجاد یک پایگاه داده، یک کاربر، و اتصال این دو به یکدیگر است.
آموزش ساخت دیتابیس (Database) و کاربر (User) جدید در cPanel
cPanel رایجترین کنترل پنل هاستینگ است و ابزاری به نام «MySQL Database Wizard» دارد که این فرآیند را بسیار ساده میکند:
۱. وارد حساب cPanel هاست مقصد خود شوید. ۲. در بخش «Databases»، روی آیکون «MySQL® Database Wizard» کلیک کنید. (این سادهترین راه است، زیرا شما را مرحله به مرحله راهنمایی میکند).
۳. مرحله ۱: Create A Database: یک نام برای دیتابیس خود وارد کنید (مثلاً newdb). cPanel به صورت خودکار یک پیشوند (مانند username_) به آن اضافه خواهد کرد. روی «Next Step» کلیک کنید.
نام کامل دیتابیس شما چیزی شبیه cpaneluser_newdb خواهد بود.
۴. مرحله ۲: Create Database Users: یک نام کاربری (مثلاً newuser) و یک رمز عبور قوی (حتماً از «Password Generator» خود cPanel استفاده کنید) وارد نمایید.
اقدام حیاتی: رمز عبور ساخته شده را فوراً در یک فایل متنی امن کپی کنید. اگر این رمز را گم کنید، قابل بازیابی نیست و باید فرآیند را تکرار کنید.
۵. مرحله ۳: Add User to Database: در این مرحله، تیک گزینه «ALL PRIVILEGES» (تمامی دسترسیها) را بزنید. این اقدام به کاربر newuser اجازه میدهد تمام عملیات لازم (ایجاد، حذف، ویرایش) را روی دیتابیس newdb انجام دهد. روی «Next Step» کلیک کنید.
۶. مرحله ۴: Complete the task: فرآیند با موفقیت انجام شد. cPanel نام کامل دیتابیس و نام کاربری را به شما نشان میدهد.
آموزش ساخت دیتابیس در DirectAdmin
فرآیند در DirectAdmin کمی متفاوت و اغلب سریعتر است، زیرا معمولاً کاربر و دیتابیس را همزمان ایجاد میکند:
۱. وارد حساب DirectAdmin هاست مقصد شوید. ۲. در بخش «Account Manager»، روی «MySQL Management» کلیک کنید. ۳. در گوشه بالا سمت چپ، روی «Create new Database» کلیک کنید. ۴. در این صفحه، شما باید ۳ فیلد را پر کنید: * Database Name: یک نام وارد کنید (مثلاً data). * Database User: یک نام کاربری وارد کنید (مثلاً user). * Password: یک رمز عبور قوی ایجاد و آن را کپی کنید.
نکته: در DirectAdmin، نام دیتابیس و نام کاربری هر دو یک پیشوند مشترک (مانند da_username_) خواهند گرفت.
۵. روی دکمه «Create Database» کلیک کنید. DirectAdmin به صورت خودکار دیتابیس و کاربر را ساخته و دسترسیهای کامل (All Privileges) را به آن کاربر تخصیص میدهد.
یادداشت اطلاعات دیتابیس (نام، کاربر، رمز عبور) برای مرحله بعد
این، مهمترین خروجی و نتیجه این مرحله است. شما باید این اطلاعات را برای مرحله بعدی (اجرای installer.php) آماده و در دسترس داشته باشید.
یک فایل متنی باز کنید و این سه مورد را که در مراحل بالا ساختید، به دقت در آن کپی کنید:
اطلاعات حیاتی برای نصب:
- Database Name (نام دیتابیس): [چیزی شبیه cpaneluser_newdb]
- Database User (نام کاربری): [چیزی شبیه cpaneluser_newuser]
- Password (رمز عبور): [رمز عبور قوی که کپی کردید]
- Host (میزبان): این مورد تقریباً همیشه localhost است. (اسکریپت Duplicator معمولاً به درستی این مقدار را تشخیص میدهد، اما دانستن آن ضروری است).
مرحله چهارم: اجرای فایل Installer.php و راهاندازی سایت
در این مرحله، ما اسکریپت جادویی Duplicator را اجرا میکنیم تا فایل آرشیو را بازگشایی کرده، دیتابیس را ایمپورت کند و آدرسهای سایت را بهروزرسانی نماید.
فراخوانی فایل نصبکننده در مرورگر (your-new-domain.com/installer.php)
این گام، فرآیند نصب را آغاز میکند.
۱. مرورگر وب خود را باز کنید. ۲. در نوار آدرس، دامنه مقصد خود را به همراه فایل installer.php که آپلود کردهاید، وارد نمایید. آدرس باید به این شکل باشد: http://your-new-domain.com/installer.php (به جای your-new-domain.com آدرس دامنه جدید خود را قرار دهید) ۳. با فشردن کلید Enter، «جادوگر نصب Duplicator» (Duplicator Installation Wizard) بارگذاری میشود. شما باید صفحهای را ببینید که وضعیت کلی را بررسی کرده و آماده شروع است.
وارد کردن اطلاعات دیتابیس جدید و تست اتصال (Test Database)
این مرحله، نقطه اتصال فنی سایت به هاست جدید شماست. در این بخش، شما باید اطلاعات دیتابیسی را که در مرحله سوم ساختهاید، به Duplicator بدهید.
۱. در بخش «Setup» یا «Database»، فیلدهای مورد نیاز را با اطلاعاتی که یادداشت کردهاید، به دقت پر کنید: * Host (میزبان): در ۹۹٪ موارد، این مقدار localhost است. * Database (نام دیتابIS): نام کامل دیتابیسی که ساختید (مثلاً cpaneluser_newdb). * User (کاربر): نام کاربری دیتابیس (مثلاً cpaneluser_newuser). * Password (رمز عبور): رمز عبور قوی که برای آن کاربر تعریف کردید.
اقدام حیاتی (Action Point): قبل از ادامه، حتماً روی دکمه «Test Database» (یا «Validate») کلیک کنید. شما باید دو پیام موفقیتآمیز سبز رنگ (Success) دریافت کنید که نشان میدهد اتصال به سرور دیتابIS و یافتن دیتابیس مورد نظر با موفقیت انجام شده است.
هشدار: اگر با خطای قرمز (Error) مواجه شدید، ادامه ندهید. به احتمال زیاد اطلاعات دیتابIS (نام، کاربر، رمز) را اشتباه وارد کردهاید یا در مرحله سوم، دسترسیهای کامل (All Privileges) را به کاربر ندادهاید.
مرحله جایگزینی آدرسها (Update Site): انتقال از دامنه قدیمی به جدید
این بخش، یکی از قدرتمندترین قابلیتهای Duplicator و دلیل اصلی برتری آن برای مهاجرتهای سئو-محور است.
در این مرحله (بخش «Update»)، اسکریپت به طور خودکار دامنه مبدأ (Old URL) و دامنه مقصد (New URL) را تشخیص میدهد. Duplicator قرار است یک عملیات «جستجو و جایگزینی» (Search & Replace) عمیق و هوشمند در کل دیتابیس انجام دهد. این کار تضمین میکند که تمامی لینکهای داخلی، آدرس تصاویر و مسیرهای فایل که با آدرس قدیمی ثبت شدهاند، به آدرس جدید بهروزرسانی شوند.
اقدام لازم: به دقت بررسی کنید که مقادیر «Old URL» و «New URL» صحیح باشند. اگر سایت شما در مقصد جدید از SSL (https) استفاده خواهد کرد، اطمینان حاصل کنید که «New URL» با https:// شروع میشود. این اقدام از بروز خطاهای محتوای ترکیبی (Mixed Content) پس از مهاجرت جلوگیری میکند.
اجرای فرآیند نصب و مشاهده گزارش نهایی
پس از تأیید اطلاعات دیتابیس (با تست موفق) و تنظیمات بهروزرسانی آدرس، تیک پذیرش قوانین (I have read…) را بزنید و روی دکمه نهایی (معمولاً «Next» یا «Submit») کلیک کنید.
اسکریپت Duplicator فرآیند نهایی را آغاز میکند: ۱. Extracting Files: فایل Archive.zip را در ریشه هاست بازگشایی میکند. ۲. Deploying Database: دیتابIS سایت قدیمی را در دیتابیس خالی جدید شما ایمپورت میکند. ۳. Updating Data: عملیات جستجو و جایگزینی آدرسها را اجرا میکند.
این فرآیند بسته به حجم سایت شما ممکن است از چند ثانیه تا چند دقیقه طول بکشد.
مشاهده گزارش نهایی (Success Page): پس از اتمام موفقیتآمیز، صفحهای نمایش داده میشود که اعلام میکند سایت شما با موفقیت منتقل شده است.
اقدامات حیاتی پس از نصب: این صفحه نهایی، یک چکلیست بسیار مهم برای تکمیل فرآیند ارائه میدهد:
۱. ورود به پیشخوان (Admin Login): دکمهای برای ورود به پیشخوان وردپرس جدید شما (با آدرس your-new-domain.com/wp-admin) وجود دارد. نام کاربری و رمز عبور شما دقیقاً همان چیزی است که در سایت مبدأ استفاده میکردید. ۲. حذف فایلهای نصب (بسیار مهم): Duplicator به شما هشدار میدهد که فایلهای installer.php، installer-backup.php و فایل Archive.zip را به دلایل امنیتی فوراً حذف کنید. رها کردن این فایلها در هاست یک حفره امنیتی بزرگ محسوب میشود. خود افزونه معمولاً دکمهای برای پاکسازی خودکار (Auto-cleanup) ارائه میدهد. در غیر این صورت، وارد File Manager هاست خود شده و آنها را دستی حذف کنید.
مرحله پنجم: اقدامات نهایی پس از مهاجرت (بسیار مهم!)
این چکلیست، فرآیند مهاجرت را به طور کامل تکمیل و ایمن میکند.
اولین قدم: حذف فایلهای Installer و Archive (هشدار جدی امنیتی)
این اولین و حیاتیترین اقدام پس از مشاهده صفحه موفقیتآمیز نصب است. فایلهای installer.php و فایل Archive.zip (و سایر فایلهای مرتبط مانند installer-backup.php یا installer-log.txt) حاوی یک کپی کامل از وبسایت و دیتابیس شما (شامل اطلاعات کاربران و رمزها) هستند.
رها کردن این فایلها در ریشه (Root) هاست، یک حفره امنیتی فاجعهبار است.
اقدام لازم (Action Point):
- در همان صفحه نهایی موفقیت Duplicator، معمولاً گزینهای برای «پاکسازی خودکار» (Auto-cleanup) وجود دارد. روی آن کلیک کنید.
- اگر این کار را نکردید، بلافاصله وارد File Manager هاست مقصد خود شوید و این فایلها را به صورت دستی Delete کنید.
ورود به پیشخوان وردپرس جدید با همان اطلاعات کاربری قبلی
پس از پاکسازی فایلهای نصب، زمان آن است که تأیید کنید کنترل کامل بر سایت جدید دارید.
۱. به آدرس ورود وردپرس سایت جدید خود بروید: your-new-domain.com/wp-admin ۲. نکته کلیدی: نام کاربری و رمز عبور شما دقیقاً همان اطلاعاتی است که در سایت مبدأ (قدیمی) استفاده میکردید. Duplicator دیتابیس کاربران را به طور کامل منتقل کرده است. ۳. با موفقیت وارد پیشخوان شوید.
تنظیم مجدد پیوندهای یکتا (Permalinks) برای جلوگیری از خطای ۴۰۴
این یک اقدام پیشگیرانه و حیاتی برای اطمینان از صحت عملکرد ساختار URL شما (که ستون فقرات سئوی داخلی است) میباشد. فرآیند مهاجرت گاهی اوقات باعث اختلال در فایل .htaccess (فایل کنترلکننده ساختار آدرسدهی در سرور) میشود.
اقدام لازم (برای جلوگیری از خطای ۴۰۴):
- در پیشخوان وردپرس جدید، به «تنظیمات» (Settings) > «پیوندهای یکتا» (Permalinks) بروید.
- شما نیازی به تغییر هیچ گزینهای ندارید.
- صرفاً یک بار روی دکمه «ذخیره تغییرات» (Save Changes) کلیک کنید.
این اقدام ساده، وردپرس را مجبور میکند تا فایل .htaccess را در سرور جدید بازنویسی (Rebuild) کند و اطمینان میدهد که تمام صفحات داخلی (نوشتهها، محصولات، دستهبندیها) به درستی بارگذاری میشوند و خطای ۴۰۴ دریافت نمیکنند.
تست کامل سایت: بررسی لینکها، تصاویر، فرمها و سبد خرید
اکنون که بخش فنی تکمیل شده، باید سایت را از دیدگاه یک کاربر واقعی و یک ربات موتور جستجو (Crawler) بررسی کنید. فرض نکنید همهچیز درست کار میکند؛ آن را تأیید (Verify) کنید.
چکلیست بازبینی نهایی:
- بررسی ظاهری: صفحه اصلی و چند صفحه داخلی (مانند یک نوشته وبلاگ و یک صفحه «درباره ما») را باز کنید. آیا ظاهر سایت دقیقاً مشابه سایت مبدأ است؟
- بررسی تصاویر: آیا تمام تصاویر به درستی بارگذاری میشوند؟ (اگر از HTTP به HTTPS مهاجرت کردهاید، در کنسول مرورگر (F12) به دنبال خطاهای «Mixed Content» بگردید).
- بررسی لینکهای داخلی: در منوی اصلی، فوتر و داخل محتوا روی لینکها کلیک کنید. آیا همه آنها به آدرسهای صحیح (در دامنه جدید) هدایت میشوند و خطای ۴۰۴ نمیدهند؟
- تست فرمها: یک فرم تماس (Contact Form) را پیدا کرده و آن را ارسال کنید. آیا ایمیل اطلاعرسانی را دریافت میکنید؟
- تست عملکرد حیاتی (E-Commerce): اگر سایت شما فروشگاهی (WooCommerce) است، این مرحله حیاتی است. فرآیند کامل خرید را شبیهسازی کنید: افزودن به سبد خرید، رفتن به صفحه تسویه حساب، و (در صورت امکان) یک پرداخت آزمایشی.
جمعبندی: تکمیل مهاجرت فنی
با تکمیل این پنج مرحله، شما با موفقیت و با استفاده از روشی امن و استاندارد (Duplicator)، وبسایت خود را به مقصدی جدید منتقل کردهاید. چکلیست نهایی (مرحله پنجم) تضمین میکند که سایت شما نه تنها از نظر فنی فعال است، بلکه از نظر امنیتی و تجربه کاربری (UX) نیز آماده پذیرایی از بازدیدکنندگان و رباتهای گوگل میباشد.
عیبیابی و خطاهای رایج Duplicator (بر اساس تجربه واقعی)
بیشتر خطاهای Duplicator ناشی از محدودیتهای سرور (هاست) شما هستند، نه ایراد در خود افزونه.
مشکل چیست؟ خطای Timeout یا Server Error هنگام ساخت بسته
تشخیص مشکل: شما در سایت مبدأ، روی دکمه «ساخت» (Build) کلیک میکنید، اما فرآیند در نیمه راه (مثلاً روی ۴۰٪) متوقف میشود یا با یک خطای سرور (Server Error 500) یا خطای اتمام زمان مجاز (Timeout Error 504) مواجه میشوید.
علت فنی (The Why): سرور مبدأ شما (هاست قدیمی) دارای محدودیتهایی در منابع، مانند max_execution_time (حداکثر زمان اجرای یک اسکریپت) یا memory_limit (حداکثر حافظه مصرفی) است. سایت شما آنقدر حجیم است (فایلها یا دیتابیس بزرگی دارد) که Duplicator برای بستهبندی آن به زمان یا حافظه بیشتری از حد مجاز سرور نیاز دارد و سرور فرآیند را متوقف میکند.
راهحل: افزایش منابع هاست یا استفاده از فیلترها در Duplicator
برای رفع خطای Timeout، شما دو راهکار اصلی دارید:
۱. استفاده هوشمندانه از فیلترها (راهحل ترجیحی): این سادهترین و سریعترین راهحل است. شما باید حجم بسته نهایی را کاهش دهید.
- اقدام لازم: در مرحله اول ساخت بسته (بخش Setup)، به تب «Archive» بروید.
- فیلتر کردن فایلها (Files): پوشههایی را که برای عملکرد سایت حیاتی نیستند، مستثنی (Exclude) کنید. رایجترین موارد عبارتند از:
- پوشه wp-content/cache (تمام پوشههای کش)
- پوشه wp-content/backups (یا هر پوشهای که بکاپهای قدیمی در آن ذخیره شده)
- پوشههای حاوی فایلهای حجیم غیرضروری (مانند آرشیوهای zip یا فایلهای ویدیویی که مستقیماً آپلود شدهاند).
- فیلتر کردن دیتابیس (Database): اگر جداول بسیار سنگینی مربوط به افزونههای آمارگیر یا لاگهای قدیمی دارید، میتوانید آنها را نیز فیلتر کنید (اگرچه این کار نیاز به دقت بیشتری دارد).
۲. افزایش منابع هاست (راهحل فنی): اگر پس از فیلتر کردن همچنان مشکل پابرجا بود، باید مستقیماً با پشتیبانی هاست مبدأ خود تماس بگیرید.
- اقدام لازم: یک تیکت پشتیبانی ارسال کنید و درخواست کنید که بهطور موقت (مثلاً برای ۳۰ دقیقه) مقادیر max_execution_time و memory_limit را برای حساب شما افزایش دهند تا فرآیند ساخت بسته Duplicator با موفقیت تکمیل شود.
مشکل: خطای اتصال به دیتابیس در مرحله نصب
تشخیص مشکل: شما در مرحله چهارم (اجرای installer.php در هاست مقصد) هستید. اطلاعات دیتابیس جدید را وارد کرده و روی دکمه «Test Database» کلیک میکنید، اما با یک خطای قرمز رنگ مواجه میشوید که نشان میدهد اتصال برقرار نشد.
علت فنی (The Why): این خطا تقریباً در ۱۰۰٪ موارد به دلیل ورود اطلاعات نادرست یا تنظیمات ناقص دیتابیس در هاست مقصد است.
چکلیست عیبیابی (اقدام لازم):
۱. اطلاعات اشتباه (Typo): آیا نام دیتابیس، نام کاربری و رمز عبور را دقیقاً کپی کردهاید؟ به کوچک و بزرگ بودن حروف حساسیت وجود دارد. ۲. فراموش کردن پیشوند (Prefix): آیا پیشوند هاست را وارد کردهاید؟ در cPanel، نام دیتابیس شما newdb نیست، بلکه cpaneluser_newdb است. این رایجترین اشتباه است. ۳. عدم تخصیص کاربر (No Privileges): آیا در مرحله سوم (ساخت دیتابیس در cPanel)، پس از ساخت کاربر و دیتابیس، کاربر را به دیتابیس متصل کردید و تیک «ALL PRIVILEGES» (تمام دسترسیها) را زدید؟ اگر این کار را نکرده باشید، کاربر اجازهی نوشتن در دیتابیس را ندارد. ۴. مقدار Host: آیا مقدار Host را به چیزی غیر از localhost تغییر دادهاید؟ در ۹۹٪ هاستهای اشتراکی، این مقدار باید localhost باقی بماند.
بررسی امکانات Duplicator Pro برای سایتهای بسیار حجیم
اگر به طور مداوم با خطای Timeout در ساخت بسته مواجه هستید، حتی پس از اعمال فیلترها، این سیگنال واضحی است که سایت شما برای نسخه رایگان Duplicator بسیار بزرگ است.
راهحل استراتژیک: نسخه پولی (Duplicator Pro) برای مدیریت ریسک در سایتهای تجاری و فروشگاهی طراحی شده است.
- قابلیت کلیدی (Chunking): نسخه Pro فرآیند بستهبندی را به «تکههای» (Chunks) کوچکتر تقسیم میکند. این یعنی به جای تلاش برای ساخت یک فایل غولپیکر در یک مرحله (که باعث Timeout میشود)، افزونه بسته را در چند مرحله کوچک و سریع ایجاد میکند. این قابلیت به طور کامل خطاهای مربوط به محدودیت منابع سرور را دور میزند.
- سایر مزایا: نسخه Pro امکانات دیگری مانند انتقال مستقیم بسته به فضاهای ابری (مثل Google Drive یا Dropbox)، پشتیبانگیری زمانبندیشده و پشتیبانی از وردپرس چندشبکهای (Multisite) را ارائه میدهد که برای مدیریت حرفهای سایت ضروری هستند.
تصمیمگیری (Action Point): اگر سایت شما یک دارایی تجاری مهم است، اتلاف وقت برای رفع خطاهای نسخه رایگان ارزش ریسک قطعی سایت را ندارد. سرمایهگذاری روی نسخه Pro یک تصمیم حرفهای برای تضمین مهاجرت امن و بدون دردسر است.
جمعبندی (Conclusion)
مهاجرت سایت با Duplicator، فراتر از یک انتقال فایل ساده است؛ این یک فرآیند مهندسیشده برای شبیهسازی (Cloning) دقیق یک محیط عملیاتی در مقصدی جدید است.
ما در این راهنما، از پیشنیازهای حیاتی و ساخت بسته در مبدأ، تا اجرای نصبکننده در مقصد و چکلیست حیاتی پس از مهاجرت را به صورت گام به گام پوشش دادیم. قدرت واقعی Duplicator در خودکارسازی فرآیند حساس «جستجو و جایگزینی» (Search & Replace) و حذف خطای انسانی نهفته است.
با دنبال کردن دقیق این مراحل، شما ریسکهای سئویی (مانند خطاهای ۴۰۴ یا محتوای ترکیبی ناشی از URLهای اشتباه) را به صفر نزدیک میکنید و از دارایی دیجیتال خود در طول این جابجایی فنی محافظت مینمایید.