آموزش سرور

آموزش انتقال سایت از سرور خارجی به سرور داخلی

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

فهرست مطالب

انتقال سایت از سرور خارجی

به طور کلی انتقال سایت از سرور خارجی به یک سرور داخلی چندان تفاوتی با مهاجرت به سرور اختصاصی ندارد، بنابراین با دنبال کردن مراحل این راهنما می توانید در سریع ترین زمان و با کمترین خطر از بین رفتن اطلاعات، سایتتان را منتقل کنید.

اولین کاری کا باید برای انتقال سایتتان انجام دهید این است که یک سرور داخلی مناسب انتخاب کنید که منابع مورد نیاز سایتتان را تامین کند، سرعت و پایداری خوبی داشته باشد بنابراین باید یک شرکت هاستینگ معتبر برای خرید سرور VPS یا VDS انتخاب کنید. برای انتخاب یک سرور داخلی خوب موارد زیر را در نظر بگیرید:

  • موقعیت سرور در داخل کشور
  • سرعت و پایداری اتصال
  • پشتیبانی فنی 24 ساعته
  • امنیت و آپتایم بالا (99.9%)
  • هماهنگی منابع با نیاز سایت (رم، پردازنده، فضای ذخیره‌سازی)

این مرحله یکی از مهم ترین مراحل در انتقال سایت است چرا که اگر به درستی انجام نشود ممکن است هر زحمتی که برای سایتتان کشیده‌اید در یک آن به باد برود. برای این کار باید از یک نرم‌افزار FTP مثل FileZilla استفاده کنید و مراحل زیر را بادقت دنبال و اجرا کنید.

  • یک پوشه جدید روی دسکتاپ ایجاد کنید (مثلاً: backup-mywebsite-1404-04)
  • نرم‌افزار FileZilla را دانلود، نصب و اجرا کنید.
  • از کنترل پنل هاست خارجی خود اطلاعات FTP را از بخش FTP Accounts یا FTP Access بردارید و در جایی امن ذخیره کنید (این اطلاعات را در دسترس دیگران قرار ندهید). این اطلاعات شامل موارد زیر می‌شود:
    • Host / Server: مثلاً ftp.yoursite.com
    • Username
    • Password
    • Port: پورت پیش‌فرض FTP (21)
  • در این مرحله باید FileZilla را به سرور خارجی متصل کنید برای این کار FileZilla را باز کنید و در قسمت بالای نرم‌افزار اطلاعات FTP را که در مرحله قبل در جایی امن ذخیره کرده بودید را به شکل زیر وارد کنید و روی دکمه Quickconnect کلیک کنید. اکنون اگر اتصال موفق باشد، در بخش بالا سمت راست لیستی از فایل‌های سرور نمایش داده می‌شود.
  • پس از برقراری اتصال FileZilla به هاست خارجی باید فایل‌های سایت را دانلود کنید. برای این کار در FileZilla در ستون سمت راست وارد پوشه public_html یا www شوید. تمام فایل‌ها را انتخاب کرده و به پوشه ایجادشده در دسکتاپ منتقل کنید.

اگر سایت شما داینامیک است (سایت های ساخته شده با وردپرس، جوملا، دروپال یا فروشگاه‌ساز) حتماً دارای دیتابیس (سایت‌های داینامیک معمولا دیتابیشان Mysql است از این رو ما نیز ادامه این آموزش را برای این دیتابیس توضیح می دهیم) است. اما اگر سایت شما استاتیک است دیتابیس ندارید و طبیعتا نیازی به انجام این مرحله نیز ندارید. اکنون اگر سایتتان دیتابیس دارد برای خروجی گرفتن از آن با استفاده از phpMyAdmin مراحل زیر را دنبال کنید:

انتقال سایت از سرور خارجی
  1. وارد کنترل‌پنل سرور خود شوید.
  2. از بخش Databases روی گزینه‌ی phpMyAdmin کلیک کنید.
  3. در سمت چپ، روی نام دیتابیس سایت‌تان کلیک کنید.
  4. وارد تب Export شوید و گزینه‌ی Quick – display only the minimal options را انتخاب کنید.
  5. از منوی Format گزینه‌ی SQL را انتخاب کنید روی Go کلیک کنید.
  6. پس از چند لحظه، فایل خروجی دیتابیس (با پسوند .sql) به‌صورت خودکار دانلود خواهد شد.
  7. در نهایت فایل دیتابیس را در کنار فایل بکاپ سایت نگهداری کنید.

پس از تهیه خروجی دیتابیس، نوبت به ساخت یک دیتابیس جدید در سرور داخلی می‌رسد تا در مراحل بعدی بتوانید اطلاعات را در آن وارد کنید.برای ساخت دیتابیس جدید در سرور داخلی مراحل زیر را دنبال کنید:

انتقال سایت از سرور خارجی
  1. وارد کنترل‌پنل سرور داخلی خود شوید.
  2. به بخش Databases بروید.
  3. روی گزینه‌ MySQL Databases کلیک کنید.
  4. در بخش Create New Database، نام دیتابیس جدید را وارد کنید و در نهایت روی Create Database کلیک کنید.
  5. یک نام کاربری و پسورد برای اتصال به دیتابیس ایجاد کنید. این اطلاعات را با دقت وارد و در جایی امن یادداشت کنید و تمام دسترسی‌ها (ALL PRIVILEGES) را فعال کنید.

اکنون نوبت وارد کردن فایل SQL در دیتابیس سرور داخلیست برای این کار:

  1. وارد phpMyAdmin در سرور جدید شوید.
  2. دیتابیس ساخته‌شده را انتخاب کنید.
  3. به تب Import بروید.
  4. فایل .sql تهیه‌شده در مراحل قبل را انتخاب کرده و روی دکمه Go کلیک کنید.

نکته: در صورتی که حجم دیتابیس بالا باشد باید گزینه Custom Export انتخاب شود و فایل به‌صورت gzip ذخیره شود.

در این مرحله باید فایل‌های کانفیگ سایت را طوری تنظیم کنید که به دیتابیس جدید متصل شوند.

برای سایت های وردپرسی در فایل wp-config.php موارد زیر را تغییر دهید:

phpCopyEditdefine('DB_NAME', 'mywebsite_db');
define('DB_USER', 'myuser');
define('DB_PASSWORD', 'strongpassword');

همچنین برای سایت های ساخته شده با جوملا در فایل configuration.php مقادیر زیر را تغییردهید:

phpCopyEditpublic $user = 'myuser';
public $password = 'strongpassword';
public $db = 'mywebsite_db';

برای سایت های ساخته شده با دروپال نیز در فایل settings.php مقادیر دیتابیس را شکل زیر تنظیم کنید:

phpCopyEdit'database' => 'mywebsite_db',
'username' => 'myuser',
'password' => 'strongpassword',

با استفاده از FileZilla، فایل‌های بکاپ را به پوشه public_html سرور داخلی منتقل کنید برای این کار مراحل زیر را دنبال کنید:

  1. اطلاعات FTP سرور داخلی را در FileZilla وارد کنید.
  2. فایل‌های بکاپ را از پنجره سمت چپ به مسیر public_html در سمت راست (سرور داخلی) انتقال دهید.

قبل از تغییر DNS و انتشار رسمی سایت روی سرور داخلی، آن را در محیط پیش‌نمایش (Preview/Test domain) بررسی کنید. در این مرحله بررسی کنید که تصاویر و فایل‌ها کامل منتقل شده‌اند؟ صفحات به‌درستی لود می‌شوند؟ فرم‌ها و عملیات‌ها به‌درستی کار می‌کنند؟

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

  1. وارد پرتال ثبت دامنه شوید.
  2. به بخش «مدیریت DNS» بروید.
  3. رکوردهای زیر را اصلاح کنید و ذخیره کنید:
نوع رکوردنامIP سرور داخلیTTL
A@W.X.Y.Z3600
AwwwW.X.Y.Z3600

برای پیدا کردن IP سرور داخلی خود مراحل زیر را دنبال کنید:

  • وارد کنترل پنل سرور شوید.
  • IP عمومی سرور معمولاً در داشبورد یا بخش Account Information قابل مشاهده است.

توجه: زمان اعمال تغییرات روی DNS ممکن است تا 24 ساعت طول بکشد. در این مدت، سایت ممکن است برای برخی کاربران هنوز از سرور قبلی نمایش داده شود.

با انجام این تغییرات، کاربران پس از ورود به دامنه سایت شما، به‌صورت خودکار به سرور داخلی منتقل می‌شوند. در نهایت اگر از Cloudflare استفاده می‌کنید، رکورد IP را از داخل داشبورد کلودفلر به‌روزرسانی کنید.

انتقال سایت از سرور خارجی به هاست داخلی، تنها زمانی به‌درستی انجام می‌شود که تمامی مراحل را با دقت و حوصله دنبال کنید. از بکاپ‌گیری و انتقال دیتابیس گرفته تا اصلاح فایل‌های پیکربندی و تنظیم رکوردهای DNS، هر مرحله نقش مهمی در انتقال موفق سایت شما از یک سرور خارجی به یک سرور داخلی دارد. با رعایت این مراحل سایت شما با سرعت بیشتر در دسترس کاربران داخلی قرار می‌گیرد، هزینه‌های ارزی کاهش می‌یابد، الزامات قانونی داخلی رعایت می‌شود، احتمال تحریم یا محدودیت بین‌المللی از بین می‌رود و سایت شما حتی با وجود محدودیت های اینترنت یا ملی شدن اینترنت در دسترس خواهد بود. در نهایت پس از انتقال، برای اطمینان از عملکرد درست، سایتتان را با ابزارهایی مانند Pingdom یا GTmetrix بررسی کنید.

آیا در فرآیند انتقال، سایت دچار قطعی می‌شود؟

در صورتی که انتقال را با دقت و مطابق راهنما انجام دهید و DNS را پس از اطمینان از عملکرد سایت تغییر دهید، اختلالی برای کاربران ایجاد نخواهد شد.

به‌روزرسانی DNS چقدر طول می‌کشد؟

از چند دقیقه تا حداکثر 24 ساعت، بسته به سرویس‌دهنده دامنه و ISP کاربران.

آیا این انتقال باعث افت رتبه سئو سایت می‌شود؟

اگر اقداماتی چون فعال‌سازی SSL، تنظیم ریدایرکت‌های 301، ارسال مجدد sitemap و بررسی در ابزارهایی مانند گوگل سرچ کنسول و … انجام شود می‌توان مهاجرت را بدون افت رتبه انجام داد. در واقع حتی ممکن است با بهبود سرعت بارگذاری در ایران، رتبه سئو بهتر شود.

چه زمان‌هایی برای تغییر DNS مناسب هستند؟

بهتر است تغییر DNS را در ساعت‌هایی انجام دهید که کمترین بازدید را دارید (شب‌ها یا تعطیلات آخر هفته)، زیرا پروپاگیشن می‌تواند تا 48–72 ساعت طول بکشد.

فاطمه صحرائیان

سلام! من فاطمه صحرائیان‌، دانشجوی ارشد هوش مصنوعی و نویسنده‌ای هستم که عاشق خلق محتواهای مفید و قابل فهمه و حالا در زمین هاست، به‌عنوان نویسنده و مدیر محتوا فعالیت می کنم و همیشه سعی می‌کنم خودمو جای شما بذارم تا بتونم به بهترین شکل به سوالات شما جواب بدم و محتوای کاربردی ارائه کنم. برام مهمه که هر مقاله‌ای که می‌نویسم، نه‌تنها اطلاعاتی مفید بهتون بده، بلکه یه تجربه لذت‌بخش و آموزنده باشه.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا