چگونه دامنه را به هاست متصل کنیم؟
چرا اتصال دامنه به هاست، بدون شناخت ساختار DNS (Domain Name System) و انواع رکوردها، میتواند به قطعی سایت منجر شود و چطور با روش گامبهگام، اتصال را بدون دردسر انجام دهیم؟
در یکی از پروژهها، مشتری تماس گرفت که سایتش از دیروز قطع شده. بعد از بررسی، معلوم شد شب قبل خودش رکوردهای DNS (Domain Name System — سیستم نام دامنه) را تغییر داده بود و بهجای تنظیم A Record، یک CNAME اشتباه اضافه کرده بود. سایت ۲۴ ساعت قطع بود تا تنظیمات را برگردانیم. آن پرونده یادآوری شد که در اتصال دامنه به هاست، جزئیات کوچک، تأثیرات بزرگی دارند. در این راهنما، مسیر گامبهگام اتصال را با تمام نکات فنی و اشتباهات رایج باز میکنم.
اگر با مفاهیم پایه آشنا نیستید، ابتدا دامنه چیست، DNS چیست و هاست چیست را بخوانید. این مقاله، فرض میکند که دامنه و هاست را خریداری کردهاید و اکنون میخواهید آنها را به هم وصل کنید.
اتصال دامنه به هاست دقیقاً چه میکند؟
وقتی کاربری در مرورگر example.com را وارد میکند، این سوال برای سیستم مطرح میشود: «این دامنه به کدام سرور اشاره میکند؟». پاسخ این سوال، در DNS ذخیره میشود. اتصال دامنه به هاست، در واقع تنظیم پاسخ همین سوال است.
سه جزء اصلی:
- دامنه: نام، نزد ثبتکننده (Registrar) ثبت شده. کنترل DNS در پنل ثبتکننده انجام میشود.
- هاست: سرور، با یک IP عمومی مشخص. IP، آدرس سرور است.
- DNS: لایه واسط که نام دامنه را به IP تبدیل میکند.
اتصال، ترکیبی از تنظیمات در پنل ثبتکننده و در پنل هاست است. بخشهای بعدی، دو روش اصلی این اتصال را باز میکنند.
دو روش اصلی اتصال
دو مسیر برای اتصال دامنه به هاست وجود دارد:
| روش | تغییر در کجا | مناسب برای |
|---|---|---|
| تغییر Nameserver | پنل ثبتکننده | اتصال کامل، انتقال کامل DNS |
| تنظیم رکوردهای DNS | پنل ثبتکننده یا DNS Manager | استفاده از سرویسهای جانبی مثل CDN |
انتخاب بین این دو، بر اساس سناریو:
- اگر میخواهید همه سرویسهای DNS را به هاست بسپارید، Nameserver تغییر دهید.
- اگر از CDN یا ایمیل سازمانی از سرویس دیگری استفاده میکنید، رکوردها را دستی تنظیم کنید.
روش اول: تغییر Nameserver
سادهترین روش. گامبهگام:
گام اول: دریافت Nameserverهای هاست
در ایمیل خوشآمد هاست شما، دو یا چند آدرس Nameserver وجود دارد. معمولاً به این شکلها:
ns1.hosting-provider.com
ns2.hosting-provider.com
اگر پیدا نکردید، در پنل هاست، بخش «Nameservers» یا «DNS Information» را ببینید. اگر هم نبود، به پشتیبانی هاست پیام بدهید.
گام دوم: ورود به پنل ثبتکننده دامنه
به سایت ثبتکننده دامنه (Registrar) وارد شوید و به بخش مدیریت دامنه بروید. مثلاً در سایتهای ایرانی، معمولاً گزینه «تغییر DNS» یا «Nameserver» در پنل کاربری وجود دارد.
گام سوم: جایگزینی Nameserverهای فعلی
Nameserverهای قبلی را پاک کنید و آدرسهای هاست جدید را وارد کنید. معمولاً حداقل دو Nameserver لازم است.
گام چهارم: ذخیره و انتظار برای پروپاگیشن
پس از ذخیره، ۱ تا ۴۸ ساعت طول میکشد تا تغییرات در سراسر اینترنت اعمال شود. در بخش پروپاگیشن، توضیح میدهم چرا.
مزایا و معایب
| جنبه | وضعیت |
|---|---|
| سرعت راهاندازی | بالا |
| پیچیدگی | پایین |
| کنترل روی جزئیات DNS | کم |
| مناسب برای سرویسهای جانبی | نه چندان |
تغییر Nameserver، سادهترین راه است، ولی کنترل شما را روی رکوردهای خاص کم میکند. اگر به CDN یا ایمیل سازمانی خاص نیاز دارید، روش دوم انتخاب کنید.
روش دوم: تنظیم رکوردهای DNS
در این روش، Nameserverهای ثبتکننده را تغییر نمیدهید، ولی رکوردهای DNS را دستی تنظیم میکنید. نکته مهم: باید DNS Manager در پنل ثبتکننده یا سرویس DNS فعال باشد.
گام اول: دریافت IP هاست
از پنل هاست خود، IP عمومی سرور را بردارید. معمولاً در ایمیل خوشآمد یا بخش «Server Information» در پنل هاست پیدا میشود.
IP Server: 123.45.67.89
NS1: ns1.hosting.com
NS2: ns2.hosting.com
گام دوم: تنظیم رکورد A
رکورد A، مهمترین رکورد است. دامنه اصلی را به IP هاست وصل میکند.
Type: A
Name: @
Value: 123.45.67.89
TTL: 3600
کاراکتر @، نشانه دامنه اصلی است. برای www هم یک رکورد A یا CNAME اضافه کنید:
Type: CNAME
Name: www
Value: example.com
TTL: 3600
گام سوم: تنظیم رکوردهای ایمیل
اگر ایمیل سازمانی دارید (مثل info@example.com)، رکوردهای MX را از هاست قبلی یادداشت کنید و در DNS جدید همانها را تنظیم کنید. تغییر MX بدون برنامه، باعث قطعی ایمیل میشود.
گام چهارم: رکوردهای جانبی
اگر از سرویسهای جانبی استفاده میکنید (CDN، Google Workspace، Microsoft 365)، رکوردهای TXT، CNAME و MX مربوطه را از سرویسدهنده بگیرید و اضافه کنید.
مزایا و معایب
| جنبه | وضعیت |
|---|---|
| سرعت راهاندازی | متوسط |
| پیچیدگی | متوسط |
| کنترل روی جزئیات DNS | بالا |
| مناسب برای سرویسهای جانبی | عالی |
انواع رکوردهای DNS و کاربردشان
در کار با DNS، شش رکورد اصلی را باید بشناسید:
رکورد A
نام دامنه را به IP نسخه ۴ وصل میکند. رایجترین رکورد. مثال: example.com → 123.45.67.89.
رکورد AAAA
مشابه A، ولی برای IP نسخه ۶ (IPv6). اگر هاست شما IPv6 دارد، این رکورد را هم تنظیم کنید.
رکورد CNAME
نام دامنه را به نام دامنه دیگر وصل میکند. مثال: www.example.com → example.com. در پروژهها، برای زیردامنهها استفاده میشود.
رکورد MX
سرور ایمیل را تعیین میکند. اگر میخواهید ایمیل روی دامنهتان کار کند، این رکورد الزامی است. فرمت:
Type: MX
Name: @
Value: mail.example.com
Priority: 10
عدد Priority پایینتر، اولویت بالاتر. اگر چند MX دارید، این ترتیب مهم است.
رکورد TXT
متن دلخواه را در DNS ذخیره میکند. کاربردهای اصلی:
- تأیید مالکیت دامنه (Verification).
- تنظیم SPF، DKIM، DMARC برای ایمیل. راهنمای تفصیلی در SPF چیست و DMARC چیست.
- Google Site Verification.
رکورد NS
Nameserverهای دامنه را تعیین میکند. تغییر در پنل ثبتکننده، این رکورد را بهروز میکند.
رکورد CAA
تعیین میکند کدام Certificate Authority مجاز به صدور گواهی SSL برای دامنه شماست. برای امنیت بیشتر، توصیه میشود:
Type: CAA
Name: @
Value: 0 issue "letsencrypt.org"
راهنمای SSL در نصب و فعالسازی SSL.
سناریوهای خاص اتصال
سناریو اول: اتصال زیردامنه
برای اتصال زیردامنه (مثل blog.example.com) به یک هاست جدا:
Type: A
Name: blog
Value: 45.67.89.10
TTL: 3600
سناریو دوم: اتصال دامنه با CDN
اگر از Cloudflare یا مشابه استفاده میکنید، معمولاً Nameserver دامنه را به CDN تغییر میدهید، سپس در پنل CDN، رکورد A را به IP هاست وصل میکنید. مقایسه تفصیلی در مقایسه سرویسهای CDN.
سناریو سوم: انتقال دامنه بدون قطعی
برای انتقال بدون قطعی، سه گام مهم:
- پیش از تغییر، TTL رکوردها را به ۳۰۰ ثانیه کاهش دهید.
- ۲۴ ساعت صبر کنید تا TTL قدیمی منقضی شود.
- سپس رکوردها را تغییر دهید.
روش تفصیلی در تغییر دامنه بدون افت سئو.
پروپاگیشن: چرا تغییرات فوری اعمال نمیشود؟
یکی از رایجترین سوالات کاربران: «تغییر دادم، چرا سایت هنوز باز نمیشود؟». پاسخ در مفهوم پروپاگیشن است.
پروپاگیشن چیست؟
DNS، سیستم توزیعشده است. هزاران سرور DNS در سراسر جهان، نسخهای از رکوردها را نگه میدارند. وقتی شما رکوردی را تغییر میدهید، سرور مبدا (Authoritative Server) بلافاصله بهروز میشود، ولی سرورهای کش در سراسر جهان، نسخه قبلی را در حافظه دارند تا زمان TTL تمام شود.
زمانهای معمول پروپاگیشن
| تغییر | زمان پروپاگیشن |
|---|---|
| رکورد A با TTL 300 | ۵ تا ۳۰ دقیقه |
| رکورد A با TTL 3600 | ۱ تا ۳ ساعت |
| رکورد A با TTL 86400 | ۱۲ تا ۲۴ ساعت |
| تغییر Nameserver | ۲۴ تا ۴۸ ساعت |
کاهش زمان پروپاگیشن
پیش از تغییر مهم (مثل انتقال هاست)، TTL را از ۲۴ ساعت قبل کاهش دهید:
# رکورد A قبل از انتقال
Type: A
Name: @
Value: old-ip
TTL: 300
با TTL ۳۰۰ ثانیه، تغییرات در پنج دقیقه در بیشتر مناطق اعمال میشود.
کاهش TTL پیش از تغییر مهم، یکی از حرفهایترین کارهایی است که در انتقالها انجام میدهم. این کار، پروپاگیشن را از ۲۴ ساعت به ۵ دقیقه کاهش میدهد.
بررسی صحت اتصال
پس از تنظیم، این پنج روش را برای بررسی استفاده کنید:
روش اول: ابزار DNS Lookup آنلاین
سرویسهای آنلاین مثل whatsmydns.net یا dnschecker.org، وضعیت DNS را از چند نقطه جهان نشان میدهند. اگر در بیشتر نقاط، IP جدید نمایش داده شد، پروپاگیشن کامل شده.
روش دوم: خط فرمان
# در لینوکس و مک
dig example.com A +short
nslookup example.com
host example.com
# در ویندوز (PowerShell)
Resolve-DnsName example.com
خروجی، IP فعلی دامنه را نشان میدهد. اگر IP جدید است، پروپاگیشن انجام شده.
روش سوم: پنل هاست
در پنل هاست، بخش «Domain» یا «Addon Domains»، معمولاً وضعیت اتصال دامنه را نشان میدهد. اگر متصل باشد، سایت باید باز شود.
روش چهارم: تست از مرورگر
سایت را در حالت Incognito یا با یک مرورگر دیگر باز کنید. اگر باز شد، پروپاگیشن روی سیستم شما انجام شده.
روش پنجم: تست SSL
پس از اتصال، SSL را نصب کنید یا اگر قبلاً نصب شده، بررسی کنید که همچنان معتبر است. مرورگر باید سایت را با آیکون قفل نشان دهد. مسیر در بررسی اعتبار SSL.
رفع خطاهای رایج
خطای اول: سایت باز نمیشود
سه احتمال:
- پروپاگیشن ناقص: صبر کنید یا در حالت Incognito تست کنید.
- رکورد اشتباه: رکورد A را با IP صحیح تنظیم کنید.
- سایت روی هاست تنظیم نشده: در پنل هاست، دامنه را به هاست اضافه کنید.
خطای دوم: خطای SSL
اگر مرورگر «Not Secure» یا خطای گواهی نشان میدهد:
- گواهی SSL نصب نشده یا منقضی شده.
- رکورد A به سرور اشتباه اشاره میکند.
- رکورد CAA صدور گواهی را محدود کرده.
راهنمای تفصیلی در رفع خطای SSL.
خطای سوم: ریدایرکت بینهایت
اگر مرورگر در حلقه ریدایرکت گیر کرد، احتمالاً تناقضی بین پروتکل HTTP و HTTPS وجود دارد، یا ریدایرکت اشتباه در .htaccess. راهنمای تفصیلی در رفع خطای حلقۀ ریدایرکت.
خطای چهارم: سایت روی دامنه قدیمی باز میشود
Cache محلی مرورگر یا Cache سرور DNS شما. سه راهحل:
- Flush DNS کنید. در ویندوز:
ipconfig /flushdns. در لینوکس:systemd-resolve --flush-caches. - مرورگر را در حالت Incognito باز کنید.
- با یک دستگاه دیگر (مثلاً موبایل) تست کنید.
خطای پنجم: ایمیل کار نمیکند
پس از تغییر DNS، رکوردهای MX و SPF گم میشوند. باید از هاست قبلی یادداشت کنید و در DNS جدید اضافه کنید. مسیر تفصیلی در راهاندازی ایمیل سازمانی با MX.
نکته مهم: اتصال ایمیل سازمانی
در پروژههایی که ایمیل سازمانی مهم است، اتصال دامنه به هاست اشتباه میتواند ایمیل را قطع کند. سه نکته:
- MX را از قبل یادداشت کنید: پیش از هر تغییر DNS، رکوردهای MX فعلی را کپی کنید.
- SPF و DKIM و DMARC: اگر ایمیل روی سرویس خارجی (Google Workspace، Microsoft 365) میزبانی میشود، رکوردهای TXT مربوطه را در DNS جدید تنظیم کنید.
- تست ایمیل: پس از اتصال، از یک ایمیل خارجی به آدرس سازمانی خود ایمیل بفرستید و برعکس. عدم دریافت، نشانه مشکل MX است.
یک هشدار مهم: تغییر Nameserver بدون بررسی MX، در خیلی از پروژهها به قطعی چند روزه ایمیل منجر شده. در یکی از پروژهها، مدیر سایت متوجه قطعی ایمیل نشد تا اینکه سه روز بعد از مشتری شکایت دریافت کرد که ایمیلهایش بیپاسخ مانده. هزینه اعتباری این غفلت، از هزینه راهاندازی سرویس بیشتر بود.
اشتباهات رایج در اتصال
- تغییر Nameserver بدون بکاپ رکوردهای قبلی: اگر یادتان نرود، هفته بعد نمیدانید چه تنظیماتی داشتید.
- نادیده گرفتن ایمیل: تغییر DNS بدون بررسی MX، به قطعی ایمیل منجر میشود.
- تغییر TTL در آخرین لحظه: پروپاگیشن طولانی میشود. TTL را از ۲۴ ساعت قبل کاهش دهید.
- رکورد CNAME در ریشه دامنه: استاندارد DNS اجازه نمیدهد CNAME در ریشه دامنه باشد (قاعدهای به نام CNAME فلَتنینگ). اگر میخواهید دامنه اصلی به دامنه دیگر وصل شود، از A Record یا سرویسهای CNAME Flattening استفاده کنید.
- فراموش کردن WWW: کاربران هم
example.comو همwww.example.comرا وارد میکنند. هر دو را تنظیم کنید. - نادیده گرفتن رکورد CAA: اگر CAA دارید و هاست جدید SSL از Let's Encrypt میخواهد، صدور گواهی شکست میخورد.
- نبود مستندسازی: رکوردهای DNS را در یک فایل ذخیره کنید تا در آینده مرجع داشته باشید.
- استفاده از یک Nameserver: حداقل دو Nameserver برای پایداری لازم است.
- ذخیره نکردن تغییرات: بعضی پنلها بعد از تغییر، نیاز به تأیید نهایی دارند. فراموش نکنید.
- اعتماد به «تست فوری»: بعضی ابزارها فقط از یک منطقه جغرافیایی تست میکنند. برای اطمینان، از چند ابزار استفاده کنید.
خط پایان
اتصال دامنه به هاست، دو مسیر اصلی دارد: تغییر Nameserver (سادهتر) و تنظیم رکوردها (کنترل بیشتر). انتخاب بین این دو، بر اساس سناریو انجام میشود. در هر دو مسیر، سه نکته کلیدی رعایت شود:
- پیش از تغییر، TTL را کاهش دهید: این کار پروپاگیشن را از ۲۴ ساعت به ۵ دقیقه میرساند.
- رکوردهای ایمیل را از قبل یادداشت کنید: MX، SPF، DKIM، DMARC.
- پس از اتصال، صحت را با ابزارها بررسی کنید: dig، ابزارهای آنلاین، Incognito.
اگر در اتصال دامنه به هاست با موقعیتی روبرو شدهاید که در این چارچوب نمیگنجد، در دیدگاهها بنویسید. تجربههای واقعی هر پروژه، این راهنما را دقیقتر میکند. 🌐