解决域名问题

This commit is contained in:
AgentLabCn
2026-06-15 23:01:31 +08:00
parent 9b3a3ee1b0
commit 850aeb4672
3 changed files with 114 additions and 1 deletions
+18
View File
@@ -431,6 +431,24 @@ docker compose --env-file .env.prod -f docker-compose.prod.yml up -d --build fro
---
## 16. 备选:IP:端口模式(无域名 / 无 SSL)
若不用域名 / 证书(域名被占用、或临时测试),可直接用 `http://<VPS-IP>:8088` 访问。**容器配置完全不变**(仍绑定 127.0.0.1),只需让宿主机 Nginx 在一个公开端口上做 HTTP 反代,并**跳过 certbot**。配置见 [deploy/nginx-ipport.conf](deploy/nginx-ipport.conf)(监听 8088、`server_name _`、反代到 127.0.0.1:8080/8000;与域名模式的 `deploy/nginx.conf` 用了不同端口与不同 upstream 名,互不冲突,可共存)。
部署命令(在 `/opt/qingye/chat`):
```bash
sudo cp deploy/nginx-ipport.conf /etc/nginx/sites-available/qingye-ipport.conf && sudo ln -sf /etc/nginx/sites-available/qingye-ipport.conf /etc/nginx/sites-enabled/ && sudo nginx -t && sudo systemctl reload nginx && sudo ufw allow 8088/tcp
```
随后浏览器打开 `http://103.170.72.162:8088`。前端域名无关(同源 `/api/v1`、按页面协议推导 `ws://`),HTTP 下照常工作;浏览器提示「不安全」属正常。
> **换端口**:把 `nginx-ipport.conf` 里唯一的 `listen 8088` 与 `ufw allow 8088/tcp` 中的 `8088` 一并改掉即可。
> **CORS**:同源访问不触发 CORS`.env.prod` 的 `CORS_ORIGINS` 无需改也能用;想精确匹配可设为 `http://103.170.72.162:8088` 再 `docker compose -f docker-compose.prod.yml restart backend`。
> **以后拿到域名**:启用第 7、8 节的 `deploy/nginx.conf` + certbotIP:端口配置可保留或删除。
---
## 附:开发环境(本机)
开发环境与本指南的生产环境**完全独立**,命令不变: