Some checks are pending
Deploy to Production / deploy (push) Waiting to run
- Changed admin frontend port from 3000 to 3300 across all configuration files - Changed API backend port from 3001 to 3301 across all configuration files - Updated health check endpoints to use new ports in CI/CD workflow - Modified documentation and deployment guides to reflect new port numbers - Updated Caddy and Nginx reverse proxy configurations to use new ports
92 lines
2.9 KiB
Plaintext
92 lines
2.9 KiB
Plaintext
# Nginx configuration for VPS
|
|
# Copy this to: /etc/nginx/sites-available/voxblog
|
|
# Then: sudo ln -s /etc/nginx/sites-available/voxblog /etc/nginx/sites-enabled/
|
|
|
|
# Option 1: Using subdomain (Recommended)
|
|
# DNS: voxblog.yourdomain.com → your-vps-ip
|
|
server {
|
|
listen 80;
|
|
server_name voxblog.yourdomain.com;
|
|
|
|
# Security headers
|
|
add_header X-Frame-Options "SAMEORIGIN" always;
|
|
add_header X-Content-Type-Options "nosniff" always;
|
|
add_header X-XSS-Protection "1; mode=block" always;
|
|
|
|
# Frontend (React Admin)
|
|
location / {
|
|
proxy_pass http://127.0.0.1:3300;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection 'upgrade';
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_cache_bypass $http_upgrade;
|
|
}
|
|
|
|
# API Backend
|
|
location /api {
|
|
proxy_pass http://127.0.0.1:3301;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection 'upgrade';
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_cache_bypass $http_upgrade;
|
|
|
|
# Long timeout for AI streaming
|
|
proxy_read_timeout 600s;
|
|
proxy_send_timeout 600s;
|
|
proxy_connect_timeout 600s;
|
|
}
|
|
}
|
|
|
|
# Option 2: Using separate subdomains
|
|
# DNS: voxblog.yourdomain.com → your-vps-ip
|
|
# DNS: api.voxblog.yourdomain.com → your-vps-ip
|
|
|
|
# Frontend subdomain
|
|
# server {
|
|
# listen 80;
|
|
# server_name voxblog.yourdomain.com;
|
|
#
|
|
# location / {
|
|
# proxy_pass http://127.0.0.1:3000;
|
|
# proxy_http_version 1.1;
|
|
# proxy_set_header Upgrade $http_upgrade;
|
|
# proxy_set_header Connection 'upgrade';
|
|
# proxy_set_header Host $host;
|
|
# proxy_set_header X-Real-IP $remote_addr;
|
|
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
# proxy_set_header X-Forwarded-Proto $scheme;
|
|
# proxy_cache_bypass $http_upgrade;
|
|
# }
|
|
# }
|
|
|
|
# API subdomain
|
|
# server {
|
|
# listen 80;
|
|
# server_name api.voxblog.yourdomain.com;
|
|
#
|
|
# location / {
|
|
# proxy_pass http://127.0.0.1:3001;
|
|
# proxy_http_version 1.1;
|
|
# proxy_set_header Upgrade $http_upgrade;
|
|
# proxy_set_header Connection 'upgrade';
|
|
# proxy_set_header Host $host;
|
|
# proxy_set_header X-Real-IP $remote_addr;
|
|
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
# proxy_set_header X-Forwarded-Proto $scheme;
|
|
# proxy_cache_bypass $http_upgrade;
|
|
#
|
|
# # Long timeout for AI streaming
|
|
# proxy_read_timeout 600s;
|
|
# proxy_send_timeout 600s;
|
|
# proxy_connect_timeout 600s;
|
|
# }
|
|
# }
|