6.9 KiB
6.9 KiB
3006端口域名访问配置方案
配置时间: 2025年1月28日
服务: Android开发网址管理器(Docker容器,端口3006)
服务器IP: 101.43.95.130
一、当前服务信息
- 服务类型: Node.js/Express应用
- 容器名称: workdizhi-web
- 内部端口: 3000
- 外部端口: 3006
- 访问地址: http://101.43.95.130:3006
二、配置方案
方案一:使用子域名访问(已配置)⭐推荐
优点:
- ✅ 访问路径清晰
- ✅ 独立域名,便于管理
- ✅ 不影响主站点
- ✅ SEO友好
配置的域名:
app.ruilaizipj.comtool.ruilaizipj.com
访问地址:
- HTTP:
http://app.ruilaizipj.com - HTTPS:
https://app.ruilaizipj.com(自动重定向)
DNS配置要求: 需要在DNSPod添加A记录:
类型:A
主机记录:app(或tool)
记录值:101.43.95.130
TTL:600
配置文件: /etc/nginx/conf.d/workdizhi.conf
方案二:使用路径访问(可选)
如果您不想使用子域名,也可以使用路径访问,例如:
https://www.ruilaizipj.com/apphttps://www.ruilaizipj.com/tool
优点:
- ✅ 不需要额外DNS配置
- ✅ 使用主域名
缺点:
- ❌ 路径较长
- ❌ 可能与主站点路由冲突
配置方法:
在 /etc/nginx/conf.d/default.conf 中添加:
# 在 location / 之前添加
location /app {
proxy_pass http://127.0.0.1:3006;
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_cache_bypass $http_upgrade;
}
三、当前配置详情
已配置的Nginx反向代理
配置文件: /etc/nginx/conf.d/workdizhi.conf
配置内容:
- ✅ 监听80和443端口
- ✅ 支持HTTP自动重定向到HTTPS
- ✅ 使用与主域名相同的SSL证书
- ✅ 反向代理到
127.0.0.1:3006 - ✅ 支持WebSocket(如果需要)
- ✅ 配置了正确的请求头转发
四、DNS配置步骤
在DNSPod添加A记录
-
登录DNSPod
- 访问:https://console.dnspod.cn/
- 登录您的账号
-
选择域名
- 找到
ruilaizipj.com域名 - 点击"解析"
- 找到
-
添加A记录
记录类型:A 主机记录:app(或tool) 记录值:101.43.95.130 TTL:600(10分钟) 线路类型:默认 -
保存并等待生效
- DNS解析通常10分钟内生效
- 可以使用
nslookup app.ruilaizipj.com检查
五、测试访问
1. 测试本地代理
# 测试HTTP访问
curl -H "Host: app.ruilaizipj.com" http://127.0.0.1 -I
# 测试HTTPS访问(需要DNS解析生效后)
curl -k -H "Host: app.ruilaizipj.com" https://127.0.0.1 -I
2. 测试DNS解析
# 检查DNS解析
nslookup app.ruilaizipj.com
# 或使用dig
dig app.ruilaizipj.com
3. 浏览器访问
DNS解析生效后,在浏览器访问:
https://app.ruilaizipj.comhttps://tool.ruilaizipj.com
六、SSL证书说明
当前使用的证书
- 证书文件:
/www/server/panel/vhost/cert/101.43.95.130/fullchain.pem - 私钥文件:
/www/server/panel/vhost/cert/101.43.95.130/privkey.pem - 域名:
www.ruilaizipj.com - 有效期: 2026-01-28 至 2026-04-27
关于子域名证书
当前配置: 子域名使用与主域名相同的证书
说明:
- 如果证书支持通配符(
*.ruilaizipj.com),子域名可以直接使用 - 如果证书不支持通配符,浏览器可能会显示证书警告
- 建议申请支持子域名的证书或单独为子域名申请证书
申请子域名SSL证书(可选)
如果需要为子域名单独申请SSL证书:
-
使用Let's Encrypt(免费)
# 使用certbot申请 certbot certonly --nginx -d app.ruilaizipj.com -
使用宝塔面板申请
- 登录宝塔面板
- 进入"网站" → 添加站点
- 使用Let's Encrypt一键申请
-
更新配置文件
ssl_certificate /path/to/app.ruilaizipj.com/fullchain.pem; ssl_certificate_key /path/to/app.ruilaizipj.com/privkey.pem;
七、常见问题
1. DNS解析未生效
症状: 无法访问子域名
解决方法:
- 等待DNS解析生效(通常10分钟内)
- 检查DNS记录是否正确添加
- 使用
nslookup或dig检查解析结果
2. SSL证书警告
症状: 浏览器显示"您的连接不是私密连接"
原因: 证书不支持子域名
解决方法:
- 申请支持子域名的证书(通配符证书)
- 或为子域名单独申请证书
3. 502 Bad Gateway
症状: 访问返回502错误
解决方法:
# 检查3006端口服务是否运行
netstat -tlnp | grep 3006
# 检查Docker容器状态
docker ps | grep workdizhi-web
# 检查Nginx错误日志
tail -f /var/log/nginx/workdizhi.error.log
4. 无法访问,但IP:端口可以访问
症状: http://101.43.95.130:3006 可以访问,但域名无法访问
解决方法:
# 检查Nginx配置
nginx -t
# 检查Nginx是否运行
systemctl status nginx
# 检查配置文件语法
cat /etc/nginx/conf.d/workdizhi.conf
八、管理命令
Nginx管理
# 测试配置
nginx -t
# 重载配置(不中断服务)
systemctl reload nginx
# 重启Nginx
systemctl restart nginx
# 查看错误日志
tail -f /var/log/nginx/workdizhi.error.log
# 查看访问日志
tail -f /var/log/nginx/workdizhi.access.log
Docker容器管理
# 查看容器状态
docker ps | grep workdizhi-web
# 查看容器日志
docker logs workdizhi-web
# 重启容器
docker restart workdizhi-web
# 停止容器
docker stop workdizhi-web
# 启动容器
docker start workdizhi-web
九、配置完成检查清单
- Nginx反向代理配置已创建
- 配置文件语法检查通过
- Nginx配置已重载
- DNS解析已配置(需要在DNSPod添加A记录)
- DNS解析已生效(等待10分钟)
- 浏览器访问测试通过
- SSL证书正常(如需要,申请子域名证书)
十、总结
当前状态
✅ Nginx配置已完成
- 配置文件:
/etc/nginx/conf.d/workdizhi.conf - 支持域名:
app.ruilaizipj.com和tool.ruilaizipj.com - 支持HTTP和HTTPS访问
- 自动HTTP重定向到HTTPS
⏳ 待完成操作
- 在DNSPod添加A记录(
app→101.43.95.130) - 等待DNS解析生效(约10分钟)
- 测试访问
https://app.ruilaizipj.com
访问地址
配置完成后,可以通过以下地址访问:
- 推荐:
https://app.ruilaizipj.com - 备选:
https://tool.ruilaizipj.com
配置时间: 2025年1月28日
配置文件: /etc/nginx/conf.d/workdizhi.conf
服务端口: 3006