در یکی از پروژه‌ها، مشتری تماس گرفت که سایتش از دیروز قطع شده. بعد از بررسی، معلوم شد شب قبل خودش رکوردهای DNS (Domain Name System — سیستم نام دامنه) را تغییر داده بود و به‌جای تنظیم A Record، یک CNAME اشتباه اضافه کرده بود. سایت ۲۴ ساعت قطع بود تا تنظیمات را برگردانیم. آن پرونده یادآوری شد که در اتصال دامنه به هاست، جزئیات کوچک، تأثیرات بزرگی دارند. در این راهنما، مسیر گام‌به‌گام اتصال را با تمام نکات فنی و اشتباهات رایج باز می‌کنم.

اگر با مفاهیم پایه آشنا نیستید، ابتدا دامنه چیست، DNS چیست و هاست چیست را بخوانید. این مقاله، فرض می‌کند که دامنه و هاست را خریداری کرده‌اید و اکنون می‌خواهید آن‌ها را به هم وصل کنید.

اتصال دامنه به هاست دقیقاً چه می‌کند؟

وقتی کاربری در مرورگر example.com را وارد می‌کند، این سوال برای سیستم مطرح می‌شود: «این دامنه به کدام سرور اشاره می‌کند؟». پاسخ این سوال، در DNS ذخیره می‌شود. اتصال دامنه به هاست، در واقع تنظیم پاسخ همین سوال است.

سه جزء اصلی:

  1. دامنه: نام، نزد ثبت‌کننده (Registrar) ثبت شده. کنترل DNS در پنل ثبت‌کننده انجام می‌شود.
  2. هاست: سرور، با یک IP عمومی مشخص. IP، آدرس سرور است.
  3. 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.

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

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

  1. پیش از تغییر، TTL رکوردها را به ۳۰۰ ثانیه کاهش دهید.
  2. ۲۴ ساعت صبر کنید تا TTL قدیمی منقضی شود.
  3. سپس رکوردها را تغییر دهید.

روش تفصیلی در تغییر دامنه بدون افت سئو.

پروپاگیشن: چرا تغییرات فوری اعمال نمی‌شود؟

یکی از رایج‌ترین سوالات کاربران: «تغییر دادم، چرا سایت هنوز باز نمی‌شود؟». پاسخ در مفهوم پروپاگیشن است.

پروپاگیشن چیست؟

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.

رفع خطاهای رایج

خطای اول: سایت باز نمی‌شود

سه احتمال:

  1. پروپاگیشن ناقص: صبر کنید یا در حالت Incognito تست کنید.
  2. رکورد اشتباه: رکورد A را با IP صحیح تنظیم کنید.
  3. سایت روی هاست تنظیم نشده: در پنل هاست، دامنه را به هاست اضافه کنید.

خطای دوم: خطای SSL

اگر مرورگر «Not Secure» یا خطای گواهی نشان می‌دهد:

  • گواهی SSL نصب نشده یا منقضی شده.
  • رکورد A به سرور اشتباه اشاره می‌کند.
  • رکورد CAA صدور گواهی را محدود کرده.

راهنمای تفصیلی در رفع خطای SSL.

خطای سوم: ریدایرکت بی‌نهایت

اگر مرورگر در حلقه ریدایرکت گیر کرد، احتمالاً تناقضی بین پروتکل HTTP و HTTPS وجود دارد، یا ریدایرکت اشتباه در .htaccess. راهنمای تفصیلی در رفع خطای حلقۀ ریدایرکت.

خطای چهارم: سایت روی دامنه قدیمی باز می‌شود

Cache محلی مرورگر یا Cache سرور DNS شما. سه راه‌حل:

  1. Flush DNS کنید. در ویندوز: ipconfig /flushdns. در لینوکس: systemd-resolve --flush-caches.
  2. مرورگر را در حالت Incognito باز کنید.
  3. با یک دستگاه دیگر (مثلاً موبایل) تست کنید.

خطای پنجم: ایمیل کار نمی‌کند

پس از تغییر DNS، رکوردهای MX و SPF گم می‌شوند. باید از هاست قبلی یادداشت کنید و در DNS جدید اضافه کنید. مسیر تفصیلی در راه‌اندازی ایمیل سازمانی با MX.

نکته مهم: اتصال ایمیل سازمانی

در پروژه‌هایی که ایمیل سازمانی مهم است، اتصال دامنه به هاست اشتباه می‌تواند ایمیل را قطع کند. سه نکته:

  1. MX را از قبل یادداشت کنید: پیش از هر تغییر DNS، رکوردهای MX فعلی را کپی کنید.
  2. SPF و DKIM و DMARC: اگر ایمیل روی سرویس خارجی (Google Workspace، Microsoft 365) میزبانی می‌شود، رکوردهای TXT مربوطه را در DNS جدید تنظیم کنید.
  3. تست ایمیل: پس از اتصال، از یک ایمیل خارجی به آدرس سازمانی خود ایمیل بفرستید و برعکس. عدم دریافت، نشانه مشکل MX است.

یک هشدار مهم: تغییر Nameserver بدون بررسی MX، در خیلی از پروژه‌ها به قطعی چند روزه ایمیل منجر شده. در یکی از پروژه‌ها، مدیر سایت متوجه قطعی ایمیل نشد تا اینکه سه روز بعد از مشتری شکایت دریافت کرد که ایمیل‌هایش بی‌پاسخ مانده. هزینه اعتباری این غفلت، از هزینه راه‌اندازی سرویس بیشتر بود.

اشتباهات رایج در اتصال

  1. تغییر Nameserver بدون بکاپ رکوردهای قبلی: اگر یادتان نرود، هفته بعد نمی‌دانید چه تنظیماتی داشتید.
  2. نادیده گرفتن ایمیل: تغییر DNS بدون بررسی MX، به قطعی ایمیل منجر می‌شود.
  3. تغییر TTL در آخرین لحظه: پروپاگیشن طولانی می‌شود. TTL را از ۲۴ ساعت قبل کاهش دهید.
  4. رکورد CNAME در ریشه دامنه: استاندارد DNS اجازه نمی‌دهد CNAME در ریشه دامنه باشد (قاعده‌ای به نام CNAME فلَتنینگ). اگر می‌خواهید دامنه اصلی به دامنه دیگر وصل شود، از A Record یا سرویس‌های CNAME Flattening استفاده کنید.
  5. فراموش کردن WWW: کاربران هم example.com و هم www.example.com را وارد می‌کنند. هر دو را تنظیم کنید.
  6. نادیده گرفتن رکورد CAA: اگر CAA دارید و هاست جدید SSL از Let's Encrypt می‌خواهد، صدور گواهی شکست می‌خورد.
  7. نبود مستندسازی: رکوردهای DNS را در یک فایل ذخیره کنید تا در آینده مرجع داشته باشید.
  8. استفاده از یک Nameserver: حداقل دو Nameserver برای پایداری لازم است.
  9. ذخیره نکردن تغییرات: بعضی پنل‌ها بعد از تغییر، نیاز به تأیید نهایی دارند. فراموش نکنید.
  10. اعتماد به «تست فوری»: بعضی ابزارها فقط از یک منطقه جغرافیایی تست می‌کنند. برای اطمینان، از چند ابزار استفاده کنید.

خط پایان

اتصال دامنه به هاست، دو مسیر اصلی دارد: تغییر Nameserver (ساده‌تر) و تنظیم رکوردها (کنترل بیشتر). انتخاب بین این دو، بر اساس سناریو انجام می‌شود. در هر دو مسیر، سه نکته کلیدی رعایت شود:

  1. پیش از تغییر، TTL را کاهش دهید: این کار پروپاگیشن را از ۲۴ ساعت به ۵ دقیقه می‌رساند.
  2. رکوردهای ایمیل را از قبل یادداشت کنید: MX، SPF، DKIM، DMARC.
  3. پس از اتصال، صحت را با ابزارها بررسی کنید: dig، ابزارهای آنلاین، Incognito.

اگر در اتصال دامنه به هاست با موقعیتی روبرو شده‌اید که در این چارچوب نمی‌گنجد، در دیدگاه‌ها بنویسید. تجربه‌های واقعی هر پروژه، این راهنما را دقیق‌تر می‌کند. 🌐