From eb2479ec4b8774ba04f6f326308d587978ba10a3 Mon Sep 17 00:00:00 2001 From: gitadmin Date: Tue, 14 Jul 2026 16:37:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..a80a07c --- /dev/null +++ b/README.md @@ -0,0 +1,65 @@ +# nginx-ai + +ash 服务器(`token.tlyq.ai`)的 nginx 反向代理配置,Docker 部署。 + +## 架构 + +``` +Internet (3 Mbps) + │ + ▼ +nginx:alpine (:80, :443) + ├── token.tlyq.ai → proxy_pass → host.docker.internal:3000 (Go 后端) + ├── token.tulingyinqing.com → proxy_pass → host.docker.internal:3000 + └── *.tlyq.ai (default) → 阿里云 WAF 阻断 +``` + +## 目录结构 + +``` +nginx-ai/ +├── docker-compose.yml # 容器定义(nginx:alpine) +├── nginx.conf # 主配置(worker / events / http / proxy / ssl) +├── conf.d/ +│ ├── token-tlyq.conf # token.tlyq.ai server block(HTTP/2) +│ ├── token-tuling.conf # token.tulingyinqing.com server block +│ └── letsencrypt.conf # HTTP→HTTPS 跳转 + acme-challenge +└── README.md +``` + +## 部署 + +```bash +git clone git@git.tlyq.ai:gaoxiaopei/nginx-ai.git /opt/nginx-ai +cd /opt/nginx-ai +docker compose up -d # 启动 +docker compose restart # 重启 +docker compose logs -f # 查看日志 +``` + +## 证书 + +证书目录 `/etc/nginx/certs/tlyq.ai/` 不在本仓库(`.gitignore` 已排除)。 + +新服务器部署时需: +1. 从旧服务器复制证书目录,或 +2. 重新申请 Let's Encrypt 证书(`certbot certonly --nginx -d *.tlyq.ai`) + +## 配置要点(2026-07-14 优化) + +| 配置项 | 优化前 | 优化后 | +|--------|:-----:|:-----:| +| `worker_processes` | 未设置(默认 1) | `auto`(2 workers) | +| `worker_connections` | 1024 | 4096 | +| `multi_accept` | 未设置 | `on` | +| HTTP/2 | 未启用 | `http2 on;` | +| `proxy_buffering` | 隐式默认 | 显式配置 | + +## 修改配置后重载 + +```bash +docker compose restart +# 或热重载(不中断服务): +docker exec nginx-ai nginx -t +docker exec nginx-ai nginx -s reload +```