Add full project files
This commit is contained in:
25
scripts/nginx/api.modstagram.com.conf
Normal file
25
scripts/nginx/api.modstagram.com.conf
Normal file
@@ -0,0 +1,25 @@
|
||||
# API — api.modstagram.com → Node.js port 3002
|
||||
# مسیر: /etc/nginx/sites-available/api.modstagram.com
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name api.modstagram.com;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:3002;
|
||||
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_read_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
client_max_body_size 100M;
|
||||
}
|
||||
}
|
||||
13
scripts/nginx/app.modstagram.com.conf
Normal file
13
scripts/nginx/app.modstagram.com.conf
Normal file
@@ -0,0 +1,13 @@
|
||||
# app.modstagram.com → ریدایرکت به api.modstagram.com
|
||||
# (جایگزین app.modstagram.ir قدیمی)
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen 443 ssl;
|
||||
server_name app.modstagram.com;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/api.modstagram.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/api.modstagram.com/privkey.pem;
|
||||
|
||||
return 301 https://api.modstagram.com$request_uri;
|
||||
}
|
||||
27
scripts/nginx/blog.modstagram.com.conf
Normal file
27
scripts/nginx/blog.modstagram.com.conf
Normal file
@@ -0,0 +1,27 @@
|
||||
# blog.modstagram.com — وردپرس / وبلاگ
|
||||
# اگر وردپرس روی پورت دیگری است، proxy_pass را عوض کنید
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name blog.modstagram.com;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
location / {
|
||||
# وردپرس معمولاً روی 8080 یا همان nginx جدا است
|
||||
# اگر مسیر فایل دارید:
|
||||
root /var/www/blog;
|
||||
index index.php index.html;
|
||||
try_files $uri $uri/ /index.php?$args;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
root /var/www/blog;
|
||||
fastcgi_pass unix:/var/run/php/php-fpm.sock;
|
||||
fastcgi_index index.php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
}
|
||||
}
|
||||
46
scripts/nginx/cdn.modstagram.com.conf
Normal file
46
scripts/nginx/cdn.modstagram.com.conf
Normal file
@@ -0,0 +1,46 @@
|
||||
# CDN — cdn.modstagram.com → کش فایلهای storage
|
||||
# مسیر: /etc/nginx/sites-available/cdn.modstagram.com
|
||||
# IP سرور: 185.164.73.197
|
||||
|
||||
proxy_cache_path /var/cache/nginx/cdn levels=1:2 keys_zone=cdn_cache:50m inactive=7d max_size=5g;
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name cdn.modstagram.com;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
location / {
|
||||
return 301 https://$host$request_uri;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
server_name cdn.modstagram.com;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/cdn.modstagram.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/cdn.modstagram.com/privkey.pem;
|
||||
ssl_protocols TLSv1.2 TLSv1.3;
|
||||
|
||||
location /storage/ {
|
||||
proxy_pass http://127.0.0.1:3002/storage/;
|
||||
proxy_set_header Host api.modstagram.com;
|
||||
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 cdn_cache;
|
||||
proxy_cache_valid 200 1h;
|
||||
proxy_cache_valid 404 1m;
|
||||
add_header X-Cache-Status $upstream_cache_status;
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
}
|
||||
|
||||
location /health {
|
||||
return 200 "cdn-ok";
|
||||
add_header Content-Type text/plain;
|
||||
}
|
||||
}
|
||||
30
scripts/nginx/cdn.modstagram.com.http.conf
Normal file
30
scripts/nginx/cdn.modstagram.com.http.conf
Normal file
@@ -0,0 +1,30 @@
|
||||
# CDN — فقط HTTP (قبل از SSL)
|
||||
# بعد از certbot فایل cdn.modstagram.com.conf را فعال کنید
|
||||
|
||||
proxy_cache_path /var/cache/nginx/cdn levels=1:2 keys_zone=cdn_cache:50m inactive=7d max_size=5g;
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name cdn.modstagram.com;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
location /storage/ {
|
||||
proxy_pass http://127.0.0.1:3002/storage/;
|
||||
proxy_set_header Host api.modstagram.com;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
|
||||
proxy_cache cdn_cache;
|
||||
proxy_cache_valid 200 1h;
|
||||
add_header X-Cache-Status $upstream_cache_status;
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
}
|
||||
|
||||
location /health {
|
||||
return 200 "cdn-ok";
|
||||
add_header Content-Type text/plain;
|
||||
}
|
||||
}
|
||||
50
scripts/nginx/modstagram-redirects.conf
Normal file
50
scripts/nginx/modstagram-redirects.conf
Normal file
@@ -0,0 +1,50 @@
|
||||
# ریدایرکت دامنههای .ir به .com
|
||||
# مسیر: /etc/nginx/sites-available/modstagram-redirects.conf
|
||||
|
||||
# modstagram.ir → modstagram.com
|
||||
server {
|
||||
listen 80;
|
||||
listen 443 ssl;
|
||||
server_name modstagram.ir www.modstagram.ir;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/modstagram.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/modstagram.com/privkey.pem;
|
||||
|
||||
return 301 https://modstagram.com$request_uri;
|
||||
}
|
||||
|
||||
# app.modstagram.ir → api.modstagram.com
|
||||
server {
|
||||
listen 80;
|
||||
listen 443 ssl;
|
||||
server_name app.modstagram.ir;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/api.modstagram.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/api.modstagram.com/privkey.pem;
|
||||
|
||||
return 301 https://api.modstagram.com$request_uri;
|
||||
}
|
||||
|
||||
# api.modstagram.ir → api.modstagram.com
|
||||
server {
|
||||
listen 80;
|
||||
listen 443 ssl;
|
||||
server_name api.modstagram.ir;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/api.modstagram.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/api.modstagram.com/privkey.pem;
|
||||
|
||||
return 301 https://api.modstagram.com$request_uri;
|
||||
}
|
||||
|
||||
# panel.modstagram.ir → panel.modstagram.com
|
||||
server {
|
||||
listen 80;
|
||||
listen 443 ssl;
|
||||
server_name panel.modstagram.ir www.panel.modstagram.ir;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/panel.modstagram.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/panel.modstagram.com/privkey.pem;
|
||||
|
||||
return 301 https://panel.modstagram.com$request_uri;
|
||||
}
|
||||
23
scripts/nginx/modstagram.com.conf
Normal file
23
scripts/nginx/modstagram.com.conf
Normal file
@@ -0,0 +1,23 @@
|
||||
# فرانت — modstagram.com → Next.js port 3001
|
||||
# مسیر: /etc/nginx/sites-available/modstagram.com
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name modstagram.com www.modstagram.com;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
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;
|
||||
# Cloudflare Flexible: origin sees HTTP but users use HTTPS — force proto for Next.js assets
|
||||
proxy_set_header X-Forwarded-Proto https;
|
||||
}
|
||||
}
|
||||
24
scripts/nginx/panel.modstagram.com.conf
Normal file
24
scripts/nginx/panel.modstagram.com.conf
Normal file
@@ -0,0 +1,24 @@
|
||||
# پنل ادمین — panel.modstagram.com
|
||||
# مسیر: /etc/nginx/sites-available/panel.modstagram.com
|
||||
# قبل از فعالسازی: npm run build در modstagram_panel
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name panel.modstagram.com;
|
||||
|
||||
root /root/modstagram_panel/build;
|
||||
index index.html;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
|
||||
expires 30d;
|
||||
add_header Cache-Control "public, immutable";
|
||||
}
|
||||
}
|
||||
19
scripts/nginx/pay.modstagram.com.conf
Normal file
19
scripts/nginx/pay.modstagram.com.conf
Normal file
@@ -0,0 +1,19 @@
|
||||
# pay.modstagram.com — درگاه پرداخت
|
||||
# فعلاً به API هدایت میشود (مسیرهای payment در بکاند)
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name pay.modstagram.com;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:3002;
|
||||
proxy_set_header Host api.modstagram.com;
|
||||
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;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user