nginx 完整配置

This commit is contained in:
2026-05-03 18:59:27 +00:00
commit e64aff5ada
26 changed files with 357 additions and 0 deletions
+51
View File
@@ -0,0 +1,51 @@
server {
server_name erp.140103.xyz;
location /assets {
alias /home/administrator/frappe-bench/sites/assets;
try_files $uri $uri/ =404;
expires 1y;
client_max_body_size 100M;
add_header Cache-Control "public";
}
location / {
proxy_pass http://127.0.0.1:8000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header Expert "";
proxy_cache_bypass $http_upgrade;
proxy_ignore_client_abort on;
}
location /socket.io {
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_pass http://127.0.0.1:9000;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/erp.140103.xyz/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/erp.140103.xyz/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = erp.140103.xyz) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name erp.140103.xyz;
return 404; # managed by Certbot
}
+32
View File
@@ -0,0 +1,32 @@
server {
server_name nextcloud.140103.xyz;
client_max_body_size 16G;
location / {
proxy_pass http://127.0.0.1:12000;
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;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/nextcloud.140103.xyz/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/nextcloud.140103.xyz/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = nextcloud.140103.xyz) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name nextcloud.140103.xyz;
client_max_body_size 16G;
return 404; # managed by Certbot
}
+38
View File
@@ -0,0 +1,38 @@
server {
server_name wiki.yaobai.org;
location / {
# 既然 IP:3000 能通,这里直接用 127.0.0.1 是最稳的
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_cache_bypass $http_upgrade;
# 必须传递这些信息,否则 Wiki.js 会因为安全策略拒绝 HTTPS 访问
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;
}
listen 443 ssl; # managed by Certbot
# 下面是 Certbot 自动生成的证书路径,请保留不要删除
ssl_certificate /etc/letsencrypt/live/wiki.yaobai.org/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/wiki.yaobai.org/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
server {
if ($host = wiki.yaobai.org) {
return 301 https://$host$request_uri;
}
listen 80;
server_name wiki.yaobai.org;
return 404;
}
+83
View File
@@ -0,0 +1,83 @@
user administrator;
worker_processes auto;
pid /run/nginx.pid;
error_log /var/log/nginx/error.log;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
# multi_accept on;
}
http {
client_max_body_size 256M;
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
types_hash_max_size 2048;
# server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# SSL Settings
##
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
##
# Logging Settings
##
access_log /var/log/nginx/access.log;
##
# Gzip Settings
##
gzip on;
# gzip_vary on;
# gzip_proxied any;
# gzip_comp_level 6;
# gzip_buffers 16 8k;
# gzip_http_version 1.1;
# gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
##
# Virtual Host Configs
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
#mail {
# # See sample authentication script at:
# # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
#
# # auth_http localhost/auth.php;
# # pop3_capabilities "TOP" "USER";
# # imap_capabilities "IMAP4rev1" "UIDPLUS";
#
# server {
# listen localhost:110;
# protocol pop3;
# proxy on;
# }
#
# server {
# listen localhost:143;
# protocol imap;
# proxy on;
# }
#}
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/filebrowser
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/fip.140103.xyz
+37
View File
@@ -0,0 +1,37 @@
server {
server_name form.140103.xyz;
location / {
proxy_pass http://localhost:3100;
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_set_header X-Forwarded-Host $host;
proxy_cache_bypass $http_upgrade;
add_header Content-Security-Policy "frame-ancestors *";
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/form.140103.xyz/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/form.140103.xyz/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = form.140103.xyz) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name form.140103.xyz;
return 404; # managed by Certbot
}
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/forum.140103.xyz
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/ftp.140103.xyz
+28
View File
@@ -0,0 +1,28 @@
server {
server_name git.140103.xyz;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/git.140103.xyz/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/git.140103.xyz/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = git.140103.xyz) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name git.140103.xyz;
return 404; # managed by Certbot
}
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/happy.140103.xyz
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/joplin.conf
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/kids
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/manager-io
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/mcp.140103.xyz
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/n8n
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/nocodb.140103.xyz
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/office.140103.xyz
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/pad.140103.xyz
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/sso.conf
+30
View File
@@ -0,0 +1,30 @@
server {
server_name tianna.140103.xyz;
location / {
proxy_pass http://127.0.0.1:11005;
proxy_set_header Host $http_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;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/tianna.140103.xyz/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/tianna.140103.xyz/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = tianna.140103.xyz) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name tianna.140103.xyz;
return 404; # managed by Certbot
}
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/upload
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/vaultwarden
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/vikunja
+40
View File
@@ -0,0 +1,40 @@
server {
listen 443 ssl;
server_name www.yaobai.org;
ssl_certificate /etc/letsencrypt/live/www.yaobai.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.yaobai.org/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
location /aisearch {
proxy_pass http://127.0.0.1:8766/search;
proxy_set_header Host $host;
proxy_read_timeout 120s;
proxy_send_timeout 120s;
add_header Access-Control-Allow-Origin *;
}
location / {
proxy_pass http://127.0.0.1:11006;
proxy_set_header Host $http_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;
}
}
server {
listen 443 ssl;
server_name ybih.140103.xyz;
ssl_certificate /etc/letsencrypt/live/ybih.140103.xyz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ybih.140103.xyz/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
return 301 https://www.yaobai.org$request_uri;
}
server {
listen 80;
server_name www.yaobai.org ybih.140103.xyz;
return 301 https://www.yaobai.org$request_uri;
}
+1
View File
@@ -0,0 +1 @@
/etc/nginx/sites-available/zitadel.conf