使用文档
私有部署

域名、Nginx 与 HTTPS

为私有服务提供统一入口,避免混合内容与路由问题

公网访问前先阅读安全与隐私中的访问建议。通过可信网络或独立认证网关访问,并使用 HTTPS 保护传输

推荐结构

浏览器通过 HTTPS 访问自己的域名,反向代理转发到后端整合服务。页面与接口使用同一来源,能减少跨域和混合内容问题

准备已经解析到服务器的域名、合法有效的证书,以及运行中的整合容器。先在内网完成部署与保存测试,再开放域名入口

Nginx 反向代理示例

以下示例假设 Nginx 与容器运行在同一宿主机,容器映射为 127.0.0.1:9080:8080,不直接对外开放 HTTP 数据端口

server {
    listen 80;
    server_name vault.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name vault.example.com;
    ssl_certificate /etc/nginx/certs/fullchain.pem;
    ssl_certificate_key /etc/nginx/certs/privkey.pem;
    client_max_body_size 20m;

    location / {
        proxy_pass http://127.0.0.1:9080;
        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;
    }
}

把域名和证书路径替换为自己的实际值。若 Nginx 也在另一个容器里,127.0.0.1 指向 Nginx 容器自身,应使用同一 Docker 网络上的服务名与容器端口

sudo nginx -t
sudo nginx -s reload

验证

打开 HTTPS 域名,确认浏览器证书有效。在登录表单填相同 HTTPS 服务地址,保存测试记录并刷新。查看浏览器网络请求,不应出现 Mixed Content、CORS 或接口 404

不要关闭证书校验来处理证书过期或域名不匹配。检查证书链、解析记录、代理目标和系统时间

路由与缓存

整合服务包含页面路由支持。独立 Nginx 托管静态前端时需要 try_files $uri $uri/ /index.html,否则历史路由页面刷新可能 404。不要缓存登录接口、密码数据接口或携带授权的响应

本官网是静态介绍站,部署配置与密码服务不同;维护者部署本官网请使用仓库中的部署说明