اتصال دامنه به سرور مجازی (DNS + Nginx) – راهنمای کامل
هدف این راهنما: در این آموزش قدمبهقدم یاد میگیریم چطور دامنهی خود را به یک سرور مجازی (VPS) متصل کنیم، تنظیمات DNS را انجام دهیم و با استفاده از Nginx سایت را روی سرور راهاندازی کنیم. این راهنما هم برای دامنههایی با DNS اختصاصی و هم با Cloudflare کاربرد دارد.
فهرست مطالب
- پیشنیازها
- گام ۱ – تنظیم DNS دامنه
- گام ۲ – نصب Nginx روی سرور
- گام ۳ – پیکربندی Nginx برای دامنه
- گام ۴ – ساخت صفحهی تست
- گام ۵ – فعالسازی SSL با Let’s Encrypt
- جمعبندی
پیشنیازها
- سرور مجازی لینوکس (Ubuntu 20.04 یا 22.04)
- دسترسی SSH به سرور
- دامنهی ثبتشده (مثلاً در Namecheap یا هر رجیسترار دیگر)
- آیپی عمومی سرور (Public IP)
گام ۱ – تنظیم DNS دامنه
برای اتصال دامنه به VPS، باید در تنظیمات DNS دو رکورد A اضافه کنیم تا دامنه به IP سرور اشاره کند.
حالت اول – استفاده از DNS اختصاصی (در پنل دامنه)
در پنل مدیریت دامنه:
Type | Host | Value | TTL |
---|---|---|---|
A | @ | آیپی سرور شما | auto |
A | www | آیپی سرور شما | auto |
🔁 منظور از «آیپی سرور شما» همان آدرس IP عمومی VPS شماست که معمولاً در پنل خاتش یا در ایمیل فعالسازی آمده است.
حالت دوم – استفاده از Cloudflare DNS
- دامنه را در حساب Cloudflare اضافه کنید
- NameServerهای ارائهشده را در پنل دامنه تنظیم کنید
- در Cloudflare → بخش DNS دو رکورد اضافه کنید:
Type | Name | Content | Proxy Status |
---|---|---|---|
A | @ | آیپی سرور شما | DNS only |
A | www | آیپی سرور شما | DNS only |
⚠️ برای نصب SSL با Let’s Encrypt، حتماً گزینه Proxy را روی DNS only بگذارید.
گام ۲ – نصب Nginx روی سرور
نصب Nginx:
sudo apt update
sudo apt install nginx -y
بررسی فعال بودن:
sudo systemctl status nginx
خروجی مورد انتظار:
● nginx.service - A high performance web server
Active: active (running) since ...
گام ۳ – پیکربندی Nginx برای دامنه
ساخت فایل کانفیگ:
sudo nano /etc/nginx/sites-available/mydomain.com
محتوای فایل:
server {
listen 80;
server_name mydomain.com www.mydomain.com;
root /var/www/mydomain.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
🔁
mydomain.com
را با نام واقعی دامنه خود جایگزین کنید.
نحوه ذخیره فایل در ویرایشگر نانو:
- کلید
Ctrl + O
را بزنید (برای ذخیره فایل) - دکمه
Enter
را فشار دهید (برای تأیید نام فایل) - سپس
Ctrl + X
را بزنید (برای خروج از نانو)
فعالسازی سایت:
sudo ln -s /etc/nginx/sites-available/mydomain.com /etc/nginx/sites-enabled/
تست صحت کانفیگ:
sudo nginx -t
خروجی موفق:
nginx: the configuration file ... syntax is ok
nginx: configuration file ... test is successful
بارگذاری مجدد Nginx:
sudo systemctl reload nginx
گام ۴ – ساخت صفحهی تست
ساخت پوشه و فایل index:
sudo mkdir -p /var/www/mydomain.com
echo "<h1>اتصال دامنه به سرور موفق بود ✅</h1>" | sudo tee /var/www/mydomain.com/index.html
تست در مرورگر:
آدرس دامنه را باز کنید:
http://mydomain.com
✨ خروجی مورد انتظار: نمایش صفحهای با پیام اتصال دامنه به سرور موفق بود ✅
گام ۵ – فعالسازی SSL با Let’s Encrypt
نصب Certbot:
sudo apt install certbot python3-certbot-nginx -y
صدور گواهی SSL:
sudo certbot --nginx -d mydomain.com -d www.mydomain.com
پس از موفقیت، در مرورگر آدرس https://mydomain.com
را باز کنید.
✨ خروجی مورد انتظار: سایت با https بالا آمده و علامت قفل کنار آدرس قابل مشاهده است.
جمعبندی
با اجرای این مراحل:
- دامنه خود را به سرور مجازی متصل کردید ✅
- تنظیمات Nginx انجام شد ✅
- صفحهی سایت بالا آمد ✅
- و SSL رایگان نصب کردید ✅
حالا سایت شما آمادهی استفاده است و میتوانید پروژهتان را روی سرور منتشر کنید. 🚀
🎯 پیشنهاد خاتش:
اگر هنوز سرور مجازی ندارید یا به دنبال VPS با سرعت بالا، آیپی ثابت و قیمت ساعتی هستید: