انتقال سایت از هاست خارجی به هاست داخلی فرایندی فنی است که در آن تمام فایلها و پایگاههای داده (Database) وبسایت از سرورهای خارج از کشور به دیتاسنترهای ایران منتقل میشوند. این جابهجایی معمولاً با هدف کاهش پینگ (Ping)، افزایش سرعت دسترسی برای کاربران ایرانی و مدیریت هزینههای ارزی انجام میشود. برخلاف تصور، این کار تنها یک کپیپیست ساده نیست و نیازمند هماهنگی دقیق بین فایلهای سایت، دیتابیس و رکوردهای DNS است تا سایت بدون قطعی (Downtime) و با حفظ ساختار قبلی در دسترس قرار گیرد.
در ادامه این مطلب، روش اصولی بکاپگیری، انتقال امن دادهها و تنظیمات نهایی سرور را بررسی میکنیم تا بدون ریسک از دست دادن اطلاعات، سایت خود را منتقل کنید.
فهرست مطالب
پیشنیازهای فنی قبل از انتقال
قبل از اینکه دکمه بکاپگیری را بزنید، باید مطمئن شویم که هاست ایرانی شما شرایط میزبانی از سایت را دارد. انتقال سایت از هاست خارجی به هاست داخلی فقط جابهجایی فایلها نیست؛ بلکه تطبیق محیط نرمافزاری مبدا و مقصد است. نادیده گرفتن این چکلیست ساده، دلیل اصلی ارورهای عجیب ۵۰۰ یا بهمریختگی دیتابیس پساز انتقال است.

برای انتقال سایت به هاست داخلی بهصورت موفق و بدون دردسر، سه فاکتور زیر حیاتی هستند:
- همگامسازی نسخه PHP و MySQL:
وارد پنل هاست فعلی (خارجی) شوید و نسخه PHP و دیتابیس را چک کنید. هاست جدید شما در ایران باید دقیقاً همان نسخه یا نسخهای بالاتر و سازگار را داشته باشد. اگر اسکریپت شما با PHP 7.4 نوشته شده و هاست جدید فقط PHP 8.2 را پشتیبانی میکند، سایت شما بالا نخواهد آمد.
- چالش تحریمها و لایسنسها (مهم):
این بخش پاشنه آشیل انتقال به ایران است. برخی قالبها، فونتهای لایسنسدار یا افزونههای تجاری، IP ایران را در لیست سیاه قرار دادهاند. قبلاز منتقل کردن سایت از هاست خارجی، مطمئن شوید که لایسنسهای شما روی سرورهای ایران فعال میمانند یا جایگزینی برای آنها دارید.
- فضای دیسک کافی (قانون ۲ برابر):
فایل بکاپ برای باز شدن (Extract) نیاز به فضا دارد. اگر حجم سایت شما ۵ گیگابایت است، هاست جدید باید حداقل ۱۰ گیگابایت فضای خالی داشته باشد تا عملیات اکسترکت بدون خطا انجام شود.
روشهای انتقال سایت
بهطور کلی برای نحوه انتقال سایت از هاست خارج به داخل کشور، دو مسیر اصلی وجود دارد: استفاده از ابزارهای خودکار (مثل پلاگینها) یا روش دستی (Manual). انتخاب روش درست به حجم سایت و دانش فنی شما بستگی دارد.
اگر سایت شما وردپرسی است و بهدنبال انتقال سایت وردپرس از خارجی به داخلی هستید و ترجیح میدهید کار را به افزونههایی مثل Duplicator بسپارید، ما قبلاً در مقاله انتقال سایت وردپرس به هاست جدید این روش را کامل توضیح دادهایم. اما واقعیت این است که برای جابهجایی از سرورهای خارجی به ایران (بهویژه برای سایتهای حجیم)، روشهای پلاگینی گاهی به دلیل اختلالات اینترنت یا محدودیتهای Time-out با شکست مواجه میشوند.
بنابراین، در ادامه این مقاله تمرکز ما روی روش دستی و فنی است. این روش اگرچه کمی پیچیدهتر بهنظر میرسد، اما ایمنترین و پایدارترین راه برای انتقال هاست خارج به هاست داخل محسوب میشود و کنترل کامل دیتابیس و فایلها را در اختیار شما قرار میدهد.
مراحل انتقال سایت از هاست خارجی

حالا که پیشنیازها را چک کردیم وقت پرداختن به موضوع اصلی است. فرایند انتقال سایت از هاست خارجی به هاست داخلی در واقع یک عمل جراحی دقیق است که در سه فاز اصلی انجام میشود: جدا کردن اطلاعات از مبدا، انتقال امن و پیوند دادن آنها در مقصد.
مرحله ۱: بکاپگیری از اطلاعات در هاست مبدا
اولین و مهمترین قدم، بکاپگیری قبلاز انتقال سایت است. اما صبر کنید؛ دکمه “Full Backup” در پنل هاست همیشه بهترین گزینه نیست! اگر حجم سایت شما بالاست (مثلاً بالای ۲ گیگابایت)، ایجاد فایل بکاپ یکپارچه ممکن است در هنگام بازگردانی (Restore) در سرور جدید باعث خطای تایمآوت (Time-out) شود.
برای منتقل کردن سایت از هاست خارجی بدون دردسر، پیشنهاد میکنیم فایلها و دیتابیس را جداگانه مدیریت کنید:
۱. فشردهسازی فایلهای سایت (File Compression):
- وارد File Manager هاست خارجی شوید.
- به داخل پوشه public_html بروید و تمام فایلها را انتخاب (Select All) کنید.
- روی گزینه Compress کلیک کنید و فرمت .zip یا .tar.gz را انتخاب کنید.


نکته حرفهای: اگر پوشه Uploads یا dl (فایلهای دانلودی) بسیار حجیم است، آن را از انتخاب خارج کنید و در یک فایل جداگانه زیپ کنید. این کار ریسک ناقص منتقل شدن فایلها را به صفر میرساند.
۲. خروجی گرفتن از دیتابیس (Database Export):
- وارد ابزار phpMyAdmin شوید.
- دیتابیس مربوط به سایت را انتخاب کنید.

- از تب Export، گزینه Quick را انتخاب کرده و فرمت را روی SQL قرار دهید.
- دکمه Go یا Export را بزنید تا فایل دیتابیس دانلود شود.

مرحله ۲: انتقال فایلها به سرور ایران (روش سریع)
اینجا دقیقاً همان نقطهای است که بسیاری از آموزشها شما را گمراه میکنند. اکثر منابع میگویند: «بکاپ را دانلود کنید و سپس در هاست جدید آپلود کنید» اما با توجه به محدودیتهای سرعت آپلود در اینترنتهای خانگی، آپلود کردن یک فایل ۵ گیگابایتی به هاست ایران ممکن است خیلی طول بکشد یا وسط کار قطع شود.
راهکار حرفهای برای انتقال هاست خارج به هاست داخل، استفاده از روش انتقال سرور به سرور (Server to Server) است. در این روش، فایلها بدون دخالت اینترنت شخصی شما و با سرعت پورت دیتاسنتر (چندین مگابایت در ثانیه) منتقل میشوند.
روش اول: استفاده از ابزار Remote Upload (سادهترین روش)
اگر دسترسی به ترمینال ندارید نگران نباشید. اکثر پنلهای مدیریت فایل (در cPanel یا DirectAdmin) گزینهای به نام Upload from URL یا Remote Upload دارند.
- لینک مستقیم فایل بکاپ را در هاست خارجی ایجاد کنید (فایل را به پوشه public_html ببرید تا با آدرس domain.com/backup.zip قابل دانلود باشد).
- در هاست ایران، گزینه Remote Upload را بزنید و لینک را وارد کنید.
- تمام! فایل در چند ثانیه منتقل میشود.
روش دوم: استفاده از خط فرمان یا ترمینال (روش مهندسی)
اگر به SSH یا ابزار Terminal در سیپنل دسترسی دارید، این سریعترین روش جهان است. کافیست دستور زیر را تایپ کنید:
wget http://your-old-domain.com/backup.zip
با اجرای این دستور، سرور جدید (ایران) مستقیماً به سرور قدیم (خارج) درخواست میفرستد و فایل را میکشد (Pull میکند).
یک نکته برای روش FTP:
استفاده از FTP برای انتقال فایلهای زیاد (هزاران فایل کوچک) بین دو سرور معمولاً کند است و پیشنهاد نمیشود، مگر اینکه بخواهید فقط یک پوشه خاص را جابهجا کنید. برای انتقال کلی، همیشه فایلها را زیپ کنید و سپس منتقل کنید.
ساخت و ایمپورت دیتابیس در مقصد
فایلها منتقل شدند، اما سایت شما هنوز مغز متفکر خود را در خانه جدید ندارد. برای تکمیل انتقال سایت به هاست داخلی، باید پایگاه داده (Database) را که در مرحله قبل خروجی گرفته بودید، در اینجا بازسازی کنید.
۱. ساخت ظرف دیتابیس:
وارد پنل هاست ایران شوید (سیپنل یا دایرکتادمین) و به بخش MySQL Database Wizard بروید.
- یک نام دیتابیس جدید بسازید.
- یک نام کاربری (User) جدید ایجاد کنید.
- یک رمز عبور بسیار قوی (ترجیحاً توسط خود سیستم جنریت شود) انتخاب کنید و آن را در نوتپد کپی کنید.
- نکته مهم: در مرحله نهایی، تیک گزینه ALL PRIVILEGES را بزنید تا یوزر دسترسی کامل به دیتابیس داشته باشد.
۲. ایمپورت کردن اطلاعات:
حالا به phpMyAdmin در هاست جدید بروید. دیتابیسی را که ساختهاید از نوار سمت چپ انتخاب کنید (توجه کنید که خالی است). روی تب Import کلیک کنید، فایل .sql که از هاست خارجی دانلود کرده بودید را انتخاب و آپلود کنید.
نکته طلایی برای سایتهای فارسی (جلوگیری از ؟؟؟ شدن متون):
یکی از مشکلات رایج در نحوه انتقال سایت از هاست خارج به داخل کشور، بههمریختگی فونتهای فارسی است. هنگام ساخت دیتابیس و ایمپورت کردن، دقت کنید که Collation دیتابیس روی utf8mb4_general_ci یا utf8mb4_unicode_ci تنظیم شده باشد. این استاندارد تمام کاراکترهای فارسی را بهدرستی پشتیبانی میکند.
مرحله ۳: اتصال سایت به دیتابیس جدید
درحال حاضر، فایلهای سایت شما روی سرور ایران هستند، اما هنوز طبق تنظیمات قدیمی، دنبال دیتابیس در سرور خارج میگردند! برای برقراری ارتباط، باید فایل تنظیمات یا کانفیگ سایت را ویرایش کنیم.
این فایل بسته به سیستم مدیریت محتوای شما متفاوت است:
- در وردپرس: فایل wp-config.php در ریشه هاست (public_html).
- در جوملا: فایل configuration.php.
- در اسکریپتهای اختصاصی: معمولاً در پوشه config یا settings.
روی فایل مربوطه کلیک راست کرده و گزینه Edit را بزنید. سپس بهدنبال خطوطی بگردید که نام دیتابیس، یوزر و پسورد در آن درج شده است. مقادیر قدیمی را پاک کنید و اطلاعات دیتابیس جدیدی را که در مرحله قبل (در هاست ایران) ساختید جایگزین کنید.
یک نمونه از فایل کانفیگ وردپرس را در زیر میبینید:
// نام دیتابیس جدیدی که در هاست ایران ساختید
define( 'DB_NAME', 'new_database_name' );
// نام کاربری دیتابیس جدید
define( 'DB_USER', 'new_database_user' );
// رمز عبوری که برای یوزر دیتابیس ست کردید
define( 'DB_PASSWORD', 'Your_Strong_Password_Here' );
// معمولاً این بخش تغییری نمیکند (مگر در شرایط خاص)
define( 'DB_HOST', 'localhost' );
پساز ذخیره (Save) این فایل، اگر آدرس سایت خود را وارد کنید، باید سایت بدون مشکل بارگذاری شود. اگر با خطای “Error Establishing a Database Connection” مواجه شدید، ۹۹٪ مواقع یا رمز عبور را اشتباه وارد کردهاید یا یوزر را به دیتابیس متصل نکردهاید (مرحله Privileges).
تغییر DNS و نهاییسازی
تا این لحظه، تمام فایلها و دیتابیس شما با موفقیت به سرور ایران منتقل شدهاند، اما بازدیدکنندگان (و گوگل) هنوز آدرس قبلی شما را میشناسند. برای نهایی کردن انتقال سایت از هاست خارجی به هاست داخلی، باید آدرسدهی دامنه را تغییر دهید.
این کار ازطریق تغییر «نیمسرورها» (Nameservers) انجام میشود.
- برای دامنههای ir: به پنل nic.ir بروید و شناسه ایرنیک خود را باز کنید. در بخش تنظیمات دامنه، DNSهای جدیدی را که شرکت هاستینگ ایران به شما داده وارد کنید.
- برای دامنههای بینالمللی (.com, .net): وارد پنل کاربری جایی که دامنه را ثبت کردهاید شوید و در بخش DNS Management مقادیر جدید را جایگزین کنید.
مفهوم Propagation (صبر استراتژیک):
بعداز تغییر DNS، انتظار نداشته باشید سایت همان لحظه روی سرور ایران باز شود. این تغییرات باید در تمام سرورهای اینترنت جهان پخش شود که به آن Propagation میگویند. این پروسه بسته به TTL (Time To Live) تنظیم شده روی دامنه، ممکن است از ۱ تا ۴۸ ساعت طول بکشد. در این بازه زمانی، ممکن است شما سایت را روی سرور جدید ببینید اما دوستتان در شهری دیگر، هنوز نسخه قدیمی را ببیند.
ابزار پیشنهادی: برای اطمینان از اینکه منتقل کردن سایت از هاست خارجی بهدرستی انجام شده و DNSها در سراسر جهان ست شدهاند، از ابزار آنلاین intodns.com استفاده کنید. اگر تمام فیلدها سبز بود، تبریک میگویم! مهاجرت شما تکمیل شده است.
مشکلات رایج پساز انتقال سایت به ایران

گاهی اوقات پساز انتقال سایت از هاست خارجی به هاست داخلی، همه چیز طبق برنامه پیش نمیرود. نترسید؛ این مشکلات در دنیای وبمستری طبیعی هستند. در اینجا ۳ مشکل اصلی که ممکن است با آنها روبهرو شوید و راهحلهایشان را بررسی میکنیم:
۱. ارور ۵۰۰ (Internal Server Error)
این ترسناکترین اما رایجترین خطاست. اگر بعداز انتقال با صفحه سفید یا ارور ۵۰۰ مواجه شدید، دو دلیل اصلی وجود دارد:
- فایل htaccess: کدهای این فایل ممکن است با تنظیمات وبسرور جدید (مثلاً تبدیل Apache به LiteSpeed) سازگار نباشد. نام این فایل را موقتاً تغییر دهید (مثلاً به htaccess_old). اگر سایت بالا آمد، باید وارد تنظیمات پیوند یکتا در وردپرس شوید و یکبار دکمه ذخیره را بزنید تا فایل جدید و سالم ساخته شود.
- نسخه PHP: همانطورکه در پیشنیازها گفتیم، عدم تطابق نسخه PHP باعث ارور ۵۰۰ میشود. ورژن PHP را در پنل هاست تغییر دهید تا نسخه سازگار را پیدا کنید.
۲. مشکل عدم نمایش آیکونها و فونتها
آیا سایت بالا آمده اما فونتها لود نمیشوند یا آیکونها بهصورت مربع توخالی دیده میشوند؟ این مشکل مربوط به تنظیمات امنیتی CORS است. مرورگرها گاهی اجازه لود شدن فونت از دامنهای که IP آن تغییر کرده را نمیدهند. برای حل این مشکل، باید کدهای مربوط به Access-Control-Allow-Origin را در فایل htaccess یا تنظیمات وبسرور خود اضافه کنید.
۳. کندی ارتباط با سرویسهای خارجی
هدف ما از انتقال سایت به هاست داخلی افزایش سرعت بود، اما گاهی میبینید که بخشهایی از سایت (مثل کپچای گوگل یا درگاههای پرداخت خارجی) کند شدهاند. دلیل این امر، فاصله جغرافیایی سرور ایران با دیتاسنترهای سرویسدهندگان خارجی (مثل APIهای گوگل) است. در این شرایط استفاده از کش (Cache) یا جایگزینهای داخلی میتواند مشکل را حل کند.
مدیریت منابع و آپتایم در دیتاسنترهای داخلی
بسیاری از وبمسترها تصور میکنند انتقال سایت از هاست خارجی به هاست داخلی بهتنهایی معجزه میکند و سرعت سایت را ۱۰ برابر خواهد کرد. اما باید یک واقعیت فنی را بدانید: پینگ پایین (به دلیل نزدیکی جغرافیایی سرور به کاربر) تنها نیمی از معادله سرعت است. نیمه دیگر و شاید مهمتر، قدرت پردازش (Processing Power) است.
در بسیاری از سرویسهای میزبانی سنتی و اشتراکی در داخل کشور، اگرچه فاصله فیزیکی کم شده است، اما صدها سایت بهصورت همزمان از یک منبع سختافزاری (CPU و RAM) استفاده میکنند. این یعنی دقیقاً در لحظاتی که ترافیک سایت شما بالا میرود، ممکن است دچار کندی لحظهای یا Lag شوید، چون همسایه شما در سرور مشغول مصرف منابع است!
برای اینکه تجربه انتقال هاست خارج به هاست داخل شیرین باشد و با خطاهای کمبود منابع مواجه نشوید، سایت شما به محیطی نیاز دارد که درعین داشتن IP ایران، منابعش کاملاً ایزوله و اختصاصی باشد. شما به زیرساختی نیاز دارید که نوسانات مصرف دیگران، روی سرعت سایت شما تاثیری نگذارد.
مقاله مرتبط: آپتایم چیست؟ راهنمای کامل برای درک پایداری سرورها و سایتها
تجربه سرعت واقعی با سرور ابری فردوسی
حال که زحمت منتقل کردن سایت از هاست خارجی را کشیدهاید، حیف است که سایتتان را در قفسِ هاستهای اشتراکی محدود کنید. پایداری و سرعتی که در دیتاسنترهای خارجی تجربه میکردید، در ایران هم قابلدسترسی است، بهشرطیکه زیرساخت درستی را انتخاب کنید.
سرور ابری (Cloud Server) فردوسی دقیقاً همان قطعه گمشده پازل شماست. با مهاجرت به سرور ابری، شما صاحب منابعی کاملاً اختصاصی میشوید که کیفیت سختافزاری آن با استانداردهای جهانی برابری میکند.
برای آشنایی بیشتر با این زیرساخت قدرتمند و مزیایی که برای شما دارد به مقاله تکمیلی زیر مراجعه کنید.
چرا سرور ابری فردوسی مکمل انتقال شماست؟
- منابع تضمینشده: دیگر نگران مصرف منابع نیستید؛ RAM و CPU مختص شماست.
- دیسکهای پرسرعت NVMe: سرعت خواندن و نوشتن اطلاعات که برای لود دیتابیس حیاتی است، چندین برابر هاردهای معمولی است.
- تست رایگان کیفیت: ما به کیفیت زیرساختمان اطمینان داریم. به همین دلیل ۱۰۰ هزار تومان اعتبار رایگان اولیه در اختیار شما قرار میدهیم تا بدون هیچ ریسکی، کیفیت و سرعت سرورها را روی سایت خودتان تست کنید و اگر راضی بودید ادامه دهید.
- پرداخت بهازای مصرف: فقط بهاندازهای منابعی که مصرف میکنید هزینه پرداخت میکنید و از پرداختهای اجباری و سنتی خبری نیست.
جمعبندی
در این مقاله آموختیم که انتقال سایت از هاست خارجی به هاست داخلی یک فرآیند ۳ مرحلهای شامل بکاپگیری اصولی، انتقال سرور به سرور فایلها و تنظیم دقیق دیتابیس است. با رعایت چکلیستهای فنی و انتخاب زیرساخت مناسب، میتوانید از مزیت پینگ پایین ایران بدون افت کیفیت بهرهمند شوید.
حالا نوبت شماست؛ آیا تجربه خاصی (چه تلخ و چه شیرین) از انتقال سایت به ایران دارید؟ یا هنوز درباره ارورهای احتمالی نگرانید؟ در بخش نظرات بنویسید تا باهم بررسی کنیم.
سؤالات متداول
آیا انتقال سایت به سرورهای ایران باعث افت رتبه سئو (SEO) میشود؟
در کوتاهمدت ممکن است نوسان جزئی داشته باشید (که طبیعی است)، اما در بلندمدت اگر سرعت سایت برای کاربران ایرانی بهتر شود، گوگل این را یک سیگنال مثبت (User Experience) تلقی میکند. نکته مهم این است که اگر سایت شما فقط مخاطب بینالمللی دارد، انتقال به ایران توصیه نمیشود.
مدتزمان قطعی سایت هنگام انتقال چقدر است؟
اگر مراحل را درست انجام دهید، قطعی تقریباً صفر است. سایت شما تا لحظه آخر روی سرور خارج باز میشود و بهمحض تغییر DNS و سپری شدن زمان انتشار (Propagation)، کاربران به سرور ایران هدایت میشوند. این پروسه معمولاً بین ۴ تا ۲۴ ساعت زمان میبرد تا برای همه اینترنتها اعمال شود.
تکلیف ایمیلهای سازمانی چه میشود؟ آیا آنها هم منتقل میشوند؟
اگر از روش «فول بکاپ» (Full Backup) استفاده کنید، ایمیلها هم منتقل میشوند. اما در روش انتقال دستی که در این مقاله توضیح دادیم، فقط فایلها و دیتابیس جابهجا میشوند. برای انتقال ایمیلها باید پوشه mail را جداگانه منتقل کنید یا از اکانتهای ایمیل دوباره در هاست جدید بسازید.
آیا بعد از انتقال، لایسنس قالب و افزونهها از کار میافتد؟
بستگی به شرکت سازنده دارد. برخی سرویسدهندگان خارجی IPهای ایران را تحریم کردهاند. قبلاز انتقال، حتماً با پشتیبانی قالب یا افزونههای پولی خود چک کنید که آیا با IP ایران مشکلی دارند یا خیر. گاهی نیاز به نصب شکن یا پروکسی روی سرور است.
آیا گواهی امنیت (SSL) هم منتقل میشود یا باید دوباره بخریم؟
SSL معمولاً روی IP سرور ست میشود. پساز انتقال به ایران، SSL قبلی نامعتبر میشود. باید در هاست جدید، درخواست صدور SSL جدید (معمولاً رایگان Let’s Encrypt) بدهید تا قفل سبز کنار دامنه دوباره ظاهر شود.
تفاوت سرعت هاست ایران و خارج چقدر محسوس است؟
تفاوت اصلی در پینگ (Ping) است. سرعت باز شدن اولیه سایت برای کاربر ایرانی در هاست داخلی حدود ۴ برابر سریعتر از هاست اروپایی است. اما دقت کنید که سرعت پردازش کدها به قدرت سختافزار (RAM/CPU) بستگی دارد، نه فقط موقعیت جغرافیایی.

