🌐 How to Point a GoDaddy Subdomain to Your VPS (With Nginx + SSL)
Hosting your app on a VPS is a great step toward full control and performance. If you’ve already deployed your app (like a Next.js app) on a VPS and want to connect it to a subdomain like abhinav.rohatech.site
, here’s a complete guide to help you get it done.
🔧 Step 1: Add a Subdomain in GoDaddy DNS
- Log in to GoDaddy and go to your domain dashboard (e.g., rohatech.site).
- Click DNS or "Manage DNS".
- Scroll down and click Add under DNS Records.
Add the following A record:
Type | Name | Value | TTL |
---|---|---|---|
A | abhinav | Your VPS IP address | 1 Hour |
This points abhinav.rohatech.site
to your VPS server.
🖥️ Step 2: Configure Nginx on Your VPS
SSH into your VPS server and create a new Nginx configuration file for your subdomain:
nano /etc/nginx/conf.d/abhinav.rohatech.site.conf
Paste the following Nginx configuration:
server {
listen 80;
server_name abhinav.rohatech.site;
location / {
proxy_pass http://localhost:3000; # Adjust if your app runs on a different port
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Then test and reload Nginx:
nginx -t
systemctl restart nginx
🔐 Step 3: Add Free SSL with Let's Encrypt
To secure your subdomain with HTTPS, use Certbot:
dnf install epel-release -y
dnf install certbot python3-certbot-nginx -y
certbot --nginx -d abhinav.rohatech.site
Follow the prompts to install the SSL certificate.
🔁 Optional: Force HTTPS Redirect
If you want to automatically redirect all HTTP traffic to HTTPS, update your Nginx config:
server {
listen 80;
server_name abhinav.rohatech.site;
return 301 https://$host$request_uri;
}
⏳ Step 4: Wait for DNS Propagation
It may take anywhere from 5 minutes to 1 hour for DNS changes to take effect globally. You can check with:
ping abhinav.rohatech.site
- Online DNS tools like dnschecker.org
✅ Your Subdomain Is Now Live!
Once the DNS has propagated and Nginx is properly configured, visiting https://abhinav.rohatech.site will show your deployed app from your VPS.
💡 Tips
- Use
pm2
to manage your app process on the server - Place environment variables in a
.env.production
file - Use
pm2 save
andpm2 startup
to keep your app running after reboot - Secure your server with a firewall (like
firewalld
orufw
)
Enjoy your powerful, subdomain-powered deployment! 🚀
Comments
Post a Comment