آموزش انتقال سایت از سرور خارجی به سرور داخلی
با بروز محدودیت های جدید روی اینترنت بسیاری از وب سایتهایی که سرور خارجی داشته اند اکنون دچار مشکل شده اند و سایتشان از دسترس خارج شده است. برای دسترسی به سرور خارج و همیشه در دسترس بودن سایتهایی که سرور خارجی دارند راه حل های زیادی وجود دارد، اما یکی از بهترین و کم هزینهترین روشها برای دسترسی به سایت انتقال سایت از سرور خارجی به سرور داخلی (ایران) است. اما این تنها دلیلی نیست که گاها افراد می خواهند سایتشان را از یک سرور خارجی به یک سرور داخلی منتقل کنند، دلایلی چون افزایش سرعت لود داخلی، رعایت الزامات قانونی یا کاهش هزینهها گاها می تواند باعث گرفتن این تصمیم شود. بنابراین اگر قصد انتقال سایت از یک سرور خارجی به یک سرور داخلی را دارید مهم نیست که سایتتان وردپرسی باشد یا برنامه نویسی شده باشد این راهنما به شما کمک می کند تا سایتتان را بدون از دست رفتن اطلاعات یا اختلال در دسترسی کاربران به یک سرور داخلی منتقل کنید.
فهرست مطالب
- انتقال سایت از سرور خارجی به داخلی
- انتخاب سرور داخلی مناسب
- بکاپگیری از سرور خارجی
- خروجی گرفتن از دیتابیس سایت
- ساخت دیتابیس جدید در سرور داخلی
- وارد کردن دیتابیس در سرور داخلی
- ویرایش فایلهای پیکربندی سایت
- آپلود فایلها روی سرور داخلی
- تست سایت پیش از انتشار
- تنظیم DNS دامنه برای اتصال به سرور داخلی
- جمعبندی
- سوالات متداول
انتقال سایت از سرور خارجی به داخلی
به طور کلی انتقال سایت از سرور خارجی به یک سرور داخلی چندان تفاوتی با مهاجرت به سرور اختصاصی ندارد، بنابراین با دنبال کردن مراحل این راهنما می توانید در سریع ترین زمان و با کمترین خطر از بین رفتن اطلاعات، سایتتان را منتقل کنید.
انتخاب سرور داخلی مناسب
اولین کاری کا باید برای انتقال سایتتان انجام دهید این است که یک سرور داخلی مناسب انتخاب کنید که منابع مورد نیاز سایتتان را تامین کند، سرعت و پایداری خوبی داشته باشد بنابراین باید یک شرکت هاستینگ معتبر برای خرید سرور 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 مراحل زیر را دنبال کنید:
- وارد کنترلپنل سرور خود شوید.
- از بخش Databases روی گزینهی phpMyAdmin کلیک کنید.
- در سمت چپ، روی نام دیتابیس سایتتان کلیک کنید.
- وارد تب Export شوید و گزینهی Quick – display only the minimal options را انتخاب کنید.
- از منوی Format گزینهی SQL را انتخاب کنید روی Go کلیک کنید.
- پس از چند لحظه، فایل خروجی دیتابیس (با پسوند .sql) بهصورت خودکار دانلود خواهد شد.
- در نهایت فایل دیتابیس را در کنار فایل بکاپ سایت نگهداری کنید.
ساخت دیتابیس جدید در سرور داخلی
پس از تهیه خروجی دیتابیس، نوبت به ساخت یک دیتابیس جدید در سرور داخلی میرسد تا در مراحل بعدی بتوانید اطلاعات را در آن وارد کنید.برای ساخت دیتابیس جدید در سرور داخلی مراحل زیر را دنبال کنید:
- وارد کنترلپنل سرور داخلی خود شوید.
- به بخش Databases بروید.
- روی گزینه MySQL Databases کلیک کنید.
- در بخش Create New Database، نام دیتابیس جدید را وارد کنید و در نهایت روی Create Database کلیک کنید.
- یک نام کاربری و پسورد برای اتصال به دیتابیس ایجاد کنید. این اطلاعات را با دقت وارد و در جایی امن یادداشت کنید و تمام دسترسیها (ALL PRIVILEGES) را فعال کنید.
وارد کردن دیتابیس در سرور داخلی
اکنون نوبت وارد کردن فایل SQL در دیتابیس سرور داخلیست برای این کار:
- وارد phpMyAdmin در سرور جدید شوید.
- دیتابیس ساختهشده را انتخاب کنید.
- به تب Import بروید.
- فایل .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
سرور داخلی منتقل کنید برای این کار مراحل زیر را دنبال کنید:
- اطلاعات FTP سرور داخلی را در FileZilla وارد کنید.
- فایلهای بکاپ را از پنجره سمت چپ به مسیر
public_html
در سمت راست (سرور داخلی) انتقال دهید.
تست سایت پیش از انتشار
قبل از تغییر DNS و انتشار رسمی سایت روی سرور داخلی، آن را در محیط پیشنمایش (Preview/Test domain) بررسی کنید. در این مرحله بررسی کنید که تصاویر و فایلها کامل منتقل شدهاند؟ صفحات بهدرستی لود میشوند؟ فرمها و عملیاتها بهدرستی کار میکنند؟
تنظیم DNS دامنه برای اتصال به سرور داخلی
برای آنکه کاربران پس از انتقال سایت از سرور خارجی بهدرستی به سرور داخلی هدایت شوند، باید رکوردهای DNS را تغییر دهید. برای این کار مراحل زیر را دنبال کنید:
- وارد پرتال ثبت دامنه شوید.
- به بخش «مدیریت DNS» بروید.
- رکوردهای زیر را اصلاح کنید و ذخیره کنید:
نوع رکورد | نام | IP سرور داخلی | TTL |
---|---|---|---|
A | @ | W.X.Y.Z | 3600 |
A | www | W.X.Y.Z | 3600 |
برای پیدا کردن IP سرور داخلی خود مراحل زیر را دنبال کنید:
- وارد کنترل پنل سرور شوید.
- IP عمومی سرور معمولاً در داشبورد یا بخش Account Information قابل مشاهده است.
توجه: زمان اعمال تغییرات روی DNS ممکن است تا 24 ساعت طول بکشد. در این مدت، سایت ممکن است برای برخی کاربران هنوز از سرور قبلی نمایش داده شود.
با انجام این تغییرات، کاربران پس از ورود به دامنه سایت شما، بهصورت خودکار به سرور داخلی منتقل میشوند. در نهایت اگر از Cloudflare استفاده میکنید، رکورد IP را از داخل داشبورد کلودفلر بهروزرسانی کنید.
جمعبندی
انتقال سایت از سرور خارجی به هاست داخلی، تنها زمانی بهدرستی انجام میشود که تمامی مراحل را با دقت و حوصله دنبال کنید. از بکاپگیری و انتقال دیتابیس گرفته تا اصلاح فایلهای پیکربندی و تنظیم رکوردهای DNS، هر مرحله نقش مهمی در انتقال موفق سایت شما از یک سرور خارجی به یک سرور داخلی دارد. با رعایت این مراحل سایت شما با سرعت بیشتر در دسترس کاربران داخلی قرار میگیرد، هزینههای ارزی کاهش مییابد، الزامات قانونی داخلی رعایت میشود، احتمال تحریم یا محدودیت بینالمللی از بین میرود و سایت شما حتی با وجود محدودیت های اینترنت یا ملی شدن اینترنت در دسترس خواهد بود. در نهایت پس از انتقال، برای اطمینان از عملکرد درست، سایتتان را با ابزارهایی مانند Pingdom یا GTmetrix بررسی کنید.
سوالات متداول
در صورتی که انتقال را با دقت و مطابق راهنما انجام دهید و DNS را پس از اطمینان از عملکرد سایت تغییر دهید، اختلالی برای کاربران ایجاد نخواهد شد.
از چند دقیقه تا حداکثر 24 ساعت، بسته به سرویسدهنده دامنه و ISP کاربران.
اگر اقداماتی چون فعالسازی SSL، تنظیم ریدایرکتهای 301، ارسال مجدد sitemap و بررسی در ابزارهایی مانند گوگل سرچ کنسول و … انجام شود میتوان مهاجرت را بدون افت رتبه انجام داد. در واقع حتی ممکن است با بهبود سرعت بارگذاری در ایران، رتبه سئو بهتر شود.
بهتر است تغییر DNS را در ساعتهایی انجام دهید که کمترین بازدید را دارید (شبها یا تعطیلات آخر هفته)، زیرا پروپاگیشن میتواند تا 48–72 ساعت طول بکشد.