آموزش انتقال سایت از ایران به خارج و جلوگیری از افت سئو در زمان ایران‌اکسس

حفظ سئو در زمان ایران اکسس

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

  • کاربران داخل کشور همچنان می‌توانند به سایت دسترسی داشته باشند
  • اما ربات‌های گوگل که از خارج به سایت متصل می‌شوند، دیگر قادر به دسترسی نیستند
  • نتیجه:
    • افزایش خطاهای Crawl
    • کاهش صفحات ایندکس‌شده
    • افت سئو

برای حل این مشکل، راه‌حل حرفه‌ای این است که:

  • سایت را علاوه بر هاست داخل، روی یک هاست خارجی نیز داشته باشیم
  • ترافیک کاربران و ربات‌ها را از طریق CDN و قوانین هوشمند PopSite Rule مدیریت کنیم
  • طوری که:
    • کاربران ایرانی، نسخه داخلی را ببینند
    • کاربران خارج و ربات‌های گوگل، نسخه خارجی را ببینند
    • سئو و دسترسی سایت در هر شرایطی پایدار بماند

در این راهنمای عملی، قدم‌به‌قدم از وضعیت فعلی (سایت روی هاست ایران) تا معماری نهایی (دو نسخه + CDN) را برای وردپرس روی cPanel توضیح می‌دهیم؛ با فرض این‌که:

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

بخش ۱ — معماری نهایی: قبل از شروع بدانیم به کجا می‌رویم

در پایان کار، ساختار شما این‌گونه خواهد بود:

  • هاست داخل ایران (cPanel)

    • نسخه اصلی/داخلی سایت (وردپرس فعلی شما)
    • پاسخ‌گو به کاربران داخل ایران در زمان ایران‌اکسس
  • هاست خارج از ایران (cPanel)

    • نسخه کامل کپی شده از سایت
    • مرجع اصلی برای ربات‌های گوگل و کاربران خارج
  • CDN (مثلاً پارس‌پک) با PopSite Rules

    • هدایت کاربران ایرانی به هاست داخل
    • هدایت کاربران خارجی و گوگل‌بات به هاست خارج
 

بخش ۲ — آماده‌سازی هاست خارجی (cPanel)

۲.۱ — انتخاب هاست خارجی مناسب وردپرس

برای وردپرس پیشنهاد می‌شود:

  • Location: آلمان / هلند / فرانسه
  • PHP: نسخه ۸.۱ یا بالاتر
  • دیتابیس: MariaDB یا MySQL 10.4+

۲.۲ — ایجاد اکانت و تنظیم اولیه cPanel

روی هاست خارج:

  1. دامنه را به اکانت cPanel متصل کنید (حتی اگر فعلاً DNS روی هاست داخل است اشکالی ندارد)
  2. از بخش MySQL Databases:
    • یک دیتابیس جدید بسازید
    • یک کاربر دیتابیس بسازید
    • دسترسی کامل (ALL PRIVILEGES) به دیتابیس بدهید
  3. اگر SSL رایگان (AutoSSL) در دسترس است، فعلاً مشکلی نیست؛ در مرحله CDN کامل می‌کنیم.
 

بخش ۳ — بکاپ‌گیری دستی از هاست داخل ایران (cPanel → Local)

به‌دلیل نبودن دسترسی هاست داخل به اینترنت بین‌الملل، باید:

  • از داخل ایران به cPanel داخلی وصل شوید
  • بکاپ را روی کامپیوتر خود دانلود کنید
  • سپس از روی کامپیوتر به هاست خارج آپلود کنید

۳.۱ — بکاپ دستی از فایل‌های سایت (فولدر وردپرس)

  1. ورود به cPanel هاست داخل
  2. باز کردن File Manager
  3. رفتن به مسیر نصب وردپرس (معمولاً public_html)
  4. انتخاب تمام فایل‌ها و فولدرها (به‌خصوص wp-content, wp-admin, wp-includes)
  5. استفاده از گزینه Compress و ساخت یک آرشیو (مثلاً site-files.zip)
  6. دانلود site-files.zip روی سیستم خود

۳.۲ — بکاپ از دیتابیس وردپرس

  1. در cPanel داخلی → قسمت phpMyAdmin
  2. دیتابیس مرتبط با وردپرس را انتخاب کنید
  3. تب Export
  4. حالت Quick و فرمت SQL
  5. روی Export کلیک و فایل مثلاً site-db.sql را دانلود کنید

حالا روی سیستم شما دو فایل داریم:

  • site-files.zip → شامل همه فایل‌های وردپرس
  • site-db.sql → بکاپ دیتابیس
 

بخش ۴ — بازگردانی (Restore) روی هاست خارجی 

۴.۱ — انتقال و اکسترکت فایل‌های وردپرس روی هاست خارج

  1. ورود به cPanel هاست خارج
  2. File Manager → رفتن به public_html (یا پوشه‌ای که می‌خواهید سایت اصلی باشد)
  3. آپلود فایل site-files.zip
  4. بعد از اتمام آپلود، روی آن راست‌کلیک کنید → Extract
  5. ساختار اکسترکت را بررسی کنید که وردپرس مستقیم داخل public_html باشد (نه nested فولدر اضافی)

۴.۲ — ساخت دیتابیس و ایمپورت روی هاست خارجی

اگر قبلاً دیتابیس ساخته‌اید (بخش ۲.۲)، به مرحله Import بروید.

  1. ورود به phpMyAdmin در هاست خارج
  2. انتخاب دیتابیس جدیدی که ساخته‌اید
  3. رفتن به تب Import
  4. انتخاب فایل site-db.sql
  5. اجرای Import و اطمینان از عدم خطا

۴.۳ — تنظیم اتصال وردپرس به دیتابیس جدید (wp-config.php)

  1. در File Manager هاست خارج، فایل wp-config.php را پیدا کنید
  2. مقدارهای زیر را با دیتابیس جدید تنظیم کنید:
define( 'DB_NAME', 'your_new_db_name' );
define( 'DB_USER', 'your_new_db_user' );
define( 'DB_PASSWORD', 'your_new_db_pass' );
define( 'DB_HOST', 'localhost' );
  1. اگر Prefix جداول در دیتابیس تغییر نکرده (wp_)، نیاز به تغییر دیگری نیست
  2. اگر دامنه همان است، فعلاً نیازی به تغییر siteurl/home در دیتابیس نیست؛ بعد از اتصال CDN همه چیز هماهنگ می‌شود.

بخش ۵ — سناریوی دو نسخه‌ای: هماهنگی هاست داخل و خارج

در این معماری:

  • نسخه فعلی روی هاست ایران → نسخه داخلی
  • نسخه جدید روی هاست خارج → نسخه خارجی

نکته مهم:

از اینجا به بعد، به‌شدت توصیه می‌شود انتشار تغییرات محتوا عمدتاً روی نسخه خارجی انجام شود و نسخه داخلی یا:

  • در بازه‌های زمانی مشخص، به‌صورت دستی Sync شود
  • یا فقط به‌عنوان نسخه عملیاتی برای کاربران داخلی در زمان ایران‌اکسس استفاده گردد

برای شروع، می‌توانید هر دو نسخه را کاملاً یکسان نگه دارید و بعد در صورت نیاز استراتژی Sync را پیشرفته‌تر کنید.

بخش ۶ — اتصال دامنه به CDN و تنظیم مسیرها

هدف این است که:

  • DNS به جای اشاره مستقیم به هاست داخل/خارج، به CDN اشاره کند
  • CDN بر اساس کشور IP و User-Agent، تصمیم بگیرد کدام هاست سرو شود

۶.۱ — تنظیم DNS روی CDN

۱. وارد پنل CDN (مثلاً پارس‌پک) شوید

۲. یک Zone برای دامنه اصلی (مثلاً example.com) ایجاد کنید

۳. رکوردهای DNS را طوری تنظیم کنید که:

  • رکورد A یا CNAME دامنه، به CDN اشاره کند (طبق مستندات همان سرویس)
  • SSL (Let’s Encrypt / AutoSSL) روی CDN فعال شود

بخش ۷ — تنظیم PopSite Rules: مغز تصمیم‌گیری ترافیک

ما می‌خواهیم:

  • کاربران ایرانی → هاست داخل ایران
  • کاربران خارج از ایران → هاست خارج
  • ربات‌های گوگل (Googlebot) → همیشه هاست خارج (برای حفظ سئو پایدار)

— تعریف  Origin rules ها در CDN

از بخش Origin Rules یک Rule یا قانون جدید ایجاد کنید و برای آن یک نام دلخواه وارد کنید.

 تنظیم شرط

در بخش شرط‌ها نیز باید یک شرط جدید از نوع کشور، مطابق با اطلاعات زیر ایجاد کنید:

  • فیلد: کشور
  • اپراتور: برابر نیست با
  • مقدار: ایران
  • در قسمت IP، آدرس IP سرور خارج از ایران را وارد کنید.

بخش ۸ — تست ساختار جدید

بعد از فعال شدن CDN و Rules:

۸.۱ — تست داخل ایران (کاربر عادی)

  • بدون VPN به سایت بروید
  • IP مقصد را از طریق ابزارهای مرورگر یا ping بررسی کنید
  • باید IP نزدیک به سرور ایران باشد (یا IP CDN که به ایران متصل است)
  • عملکرد سایت: باید از نسخه داخلی سرو شود

۸.۲ — تست با VPN (کاربر خارج)

  • با VPN اروپا/آمریکا به سایت بروید
  • باید نسخه خارجی سرو شود
  • سرعت و دسترسی باید پایدار و بدون قطعی باشد

۸.۳ — تست به‌عنوان Googlebot

  • از سرچ کنسول (URL Inspection → Test Live URL) استفاده کنید
  • وضعیت Fetch باید بدون خطا و با Response Code 200 باشد
  • در لاگ‌های سرور خارج، Requestهای Googlebot را بررسی کنید تا مطمئن شوید آن‌ها به نسخه خارجی هدایت می‌شوند
 

بخش ۹ — چک‌لیست نهایی فنی

قبل از اتکا به این معماری در محیط واقعی، موارد زیر را بررسی کنید:

  • [ ] SSL روی هر دو هاست (داخل و خارج) OK است (یا حداقل روی CDN است و Originها معتبر هستند)
  • [ ] wp-config.php در دو نسخه به‌درستی تنظیم شده و به دیتابیس‌های صحیح متصل است
  • [ ] نسخه خارجی سایت بدون خطا (PHP، Database، 404) کار می‌کند
  • [ ] CDN فعال و DNS دامنه به آن اشاره می‌کند
  • [ ] PopSite Rules به‌ترتیب صحیح و با شرایط درست اعمال شده‌اند
  • [ ] robots.txt و sitemap.xml طوری تنظیم شده‌اند که نسخه خارجی برای گوگل مرجع باشد
  • [ ] cronjobهای حساس (مثل wp-cron یا jobهای فروشگاهی) یا فقط روی یکی از نسخه‌ها فعال شده‌اند (ترجیحاً خارجی) تا دو بار اجرا نشوند
  • [ ] هنگام ایران‌اکسس تست کرده‌اید که سایت از داخل ایران همچنان پاسخ‌گو است (در حد امکان شبیه‌سازی یا تجربه عملی)
 

بخش ۱۰ — توصیه معماری برای وردپرس‌های بزرگ‌تر

برای سایت‌های بزرگ‌تر یا فروشگاهی (WooCommerce):

  • نگه داشتن دو دیتابیس کاملاً Sync، پیچیده و حساس است
  • معماری پیشنهادی حرفه‌ای‌تر:
  1. دیتابیس master روی خارج
  2. نسخه داخلی فقط Replica (یا فقط برای خواندن در زمان بحران)
  3. Media (فایل‌های آپلود) روی یک Storage مشترک (S3-compatible یا Object Storage)
  4. آپلود‌ها همیشه فقط از نسخه خارجی انجام شود
  5. Cronjobs و Jobهای حساس فقط روی نسخه خارجی اجرا شوند
  6. CDN وظیفه توزیع ترافیک و مدیریت دسترسی را بر عهده داشته باشد

اجرای صحیح این معماری، نیاز به طراحی و پیاده‌سازی دقیق دارد و برای سایت‌های با ترافیک بالا کاملاً توجیه‌پذیر است.

جمع‌بندی

در شرایطی که:

  • سایت شما روی هاست داخل ایران است
  • هاست داخلی به اینترنت بین‌الملل دسترسی ندارد
  • و نگران افت سئو در زمان ایران‌اکسس هستید

راهکار حرفه‌ای این است که:

  1. یک نسخه کامل از سایت (فایل‌ها + دیتابیس) را به‌صورت دستی از هاست داخلی بکاپ بگیرید
  2. همان نسخه را روی هاست خارجی (cPanel) بازگردانی کنید
  3. دامنه را به CDN متصل کنید
  4. با استفاده از PopSite Rules:
    • کاربران ایرانی را به هاست داخلی
    • کاربران غیرایرانی و ربات‌های گوگل را به هاست خارجی هدایت کنید

به این ترتیب:

  • کاربران داخل ایران حتی در زمان ایران‌اکسس، به سایت دسترسی خواهند داشت
  • ربات‌های گوگل همیشه نسخه خارجی را می‌بینند و سئو پایدار می‌ماند
  • ریسک از دست دادن رتبه و ترافیک ارگانیک به حداقل می‌رسد

اگر ترجیح می‌دهید این فرایند پیچیده را به‌صورت ایمن، بدون downtime و با معماری درست انجام دهید، ما در هریتک  این کار را به‌صورت کامل برای شما انجام می‌دهیم:

  • تحلیل وضعیت فعلی سایت و هاست داخلی
  • انتقال دستی و بهینه وردپرس از هاست ایران به هاست خارج (cPanel به cPanel)
  • راه‌اندازی معماری دو نسخه‌ای (داخل + خارج)
  • تنظیم حرفه‌ای CDN و PopSite Rules برای کاربران و ربات‌ها
  • بهینه‌سازی وردپرس، کش، امنیت و Performance
  • مانیتورینگ و تست پس از استقرار برای اطمینان از عدم افت سئو