دامنه خریدهاید، VPS دارید، و مرورگر هنوز میگوید «دسترسی به این سایت ممکن نیست». قطعهی گمشده تقریباً همیشه دو رکورد DNS است و وبسروری که واقعاً روی آدرس درست جواب بدهد. این کل مسیر است، از رجیسترار تا قفل HTTPS که کار میکند.
پیش از شروع: پلن شما ترافیک وب را میپذیرد؟
بازدیدکنندگان به پورتهای ۸۰ و ۴۴۳ سرور وصل میشوند. این یعنی به پلنی با IP عمومی مخصوص خودش نیاز دارید. پلنهای NAT فقط پورت SSH شخصی شما را فوروارد میکنند، پس نمیتوانند سایتی را روی دامنه میزبانی کنند — مقالهی ما IP اختصاصی یا NAT تفاوت را توضیح میدهد. یک سایت کوچک روی Nano-IP بهخوبی اجرا میشود.
۱. آدرسهای سرور را پیدا کنید
آدرسهای IPv4 و IPv6 در صفحهی سرور در پنل کاربری است. در مثالها از آدرسهای مخصوص مستندات استفاده میکنیم:
- IPv4:
203.0.113.10 - IPv6:
2001:db8::10
۲. رکوردهای DNS را بسازید
جایی که DNS دامنهتان مدیریت میشود (معمولاً رجیسترار) وارد شوید و اینها را اضافه کنید:
| نوع | نام | مقدار | TTL |
|---|---|---|---|
| A | @ | 203.0.113.10 | 300 |
| AAAA | @ | 2001:db8::10 | 300 |
| CNAME | www | example.com. | 300 |
@ یعنی دامنهی اصلی. TTL کوتاهی مثل ۳۰۰ ثانیه اصلاح اشتباهها را ارزان میکند؛ وقتی همه چیز کار کرد میتوانید آن را به ۳۶۰۰ برسانید.
اگر فعلاً IPv6 نمیخواهید، رکورد AAAA را فعلاً رها کنید — هشدار مرحلهی ۵ را ببینید.
۳. بررسی کنید DNS جواب میدهد
به پیام «ذخیره شد» رجیسترار اعتماد نکنید. مستقیم از DNS بپرسید:
dig +short example.com A
dig +short example.com AAAA
dig +short www.example.com
dig +short example.com A @1.1.1.1
خط آخر از یک ریزالور عمومی میپرسد که به آنچه بازدیدکنندگان میبینند نزدیکتر است. اگر IP خودتان برگشت، کار DNS تمام است.
۴. سرور را به جواب دادن وادار کنید
nginx را نصب و پورتها را باز کنید:
apt update && apt install -y nginx
ufw allow 80/tcp
ufw allow 443/tcp
http://example.com را باز کنید — باید صفحهی خوشآمد nginx را ببینید. حالا HTTPS را با یک گواهی رایگان اضافه کنید:
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
Certbot پیکربندی nginx را ویرایش میکند، هدایت به HTTPS را تنظیم میکند و گواهی را خودکار تمدید میکند. برای یک برنامهی واقعی پشت nginx، راهنمای reverse proxy با HTTPS را دنبال کنید.
۵. تلهی IPv6
خیلیها در این تله میافتند. رکورد AAAA اضافه میکنید، اما nginx فقط روی IPv4 گوش میدهد. بازدیدکنندگان IPv6 (بسیاری از شبکههای موبایل) اول آدرس IPv6 را امتحان میکنند و شکست میخورند. مطمئن شوید بلوک server هر دو خط را دارد:
listen 80;
listen [::]:80;
پیکربندی پیشفرض nginx در Ubuntu از قبل [::] را دارد، اما پیکربندیهای سفارشی اغلب جا میاندازندش. از دستگاهی با IPv6 آزمایش کنید:
curl -6 -I https://example.com
مشکلات رایج
- هنوز IP قدیمی دیده میشود: ریزالور محلیتان آن را کش کرده. تا تمام شدن TTL صبر کنید یا مثل بالا از
@1.1.1.1بپرسید. - Certbot با timeout شکست میخورد: پورت ۸۰ بسته است یا DNS هنوز به اینجا اشاره نمیکند. دوباره
ufw statusوdigرا بررسی کنید. - بدون www کار میکند، با www نه: گواهی یا بلوک server شامل
wwwنیست. certbot را با هر دو نام دوباره اجرا کنید.
دربارهی DNS معکوس
رکوردهای A و AAAA از نام به IP میروند. DNS معکوس (PTR) برعکس عمل میکند و در پنل کاربری تنظیم میشود، نه نزد رجیسترار. فقط برای ایمیل یا وقتی سرویسی آن را بررسی میکند لازمش دارید — راهنمای PTR آن را پوشش میدهد.
اگر اولین بار است سایتی را آنلاین میکنید، صفحهی کاربرد برای وبسایت در انتخاب اندازه کمک میکند، و مستندات شبکه فهرست آدرسهای هر پلن را دارد.
نظرات
هنوز نظری نیست. اولین نفر باشید.