# XYZW Token Manager 部署说明 ## 快速启动 ### 本地开发模式 ```bash start-local.bat ``` - 端口:3001 - 访问:http://localhost:3001 - 仅本地访问 ### 部署模式(公网访问) ```bash start-deploy.bat ``` - 端口:25432 - 本地访问:http://localhost:25432 - 域名访问:http://winnas.whtnas.top:25432 - 支持:IPv4本地 + IPv6公网 ## 部署配置步骤 ### 1. 域名DNS配置 确保域名 `winnas.whtnas.top` 已配置IPv6 AAAA记录: ``` 类型: AAAA 主机记录: winnas (或 @) 记录值: [你的IPv6地址] TTL: 600 ``` 可以通过以下命令验证DNS解析: ```bash nslookup -type=AAAA winnas.whtnas.top ``` ### 2. Windows防火墙配置 #### 方法一:通过PowerShell添加防火墙规则(推荐) 以管理员身份运行PowerShell,执行以下命令: ```powershell # 添加入站规则 - 允许25432端口 New-NetFirewallRule -DisplayName "XYZW Token Manager - 25432" -Direction Inbound -LocalPort 25432 -Protocol TCP -Action Allow -Profile Any # 验证规则是否添加成功 Get-NetFirewallRule -DisplayName "XYZW Token Manager - 25432" ``` #### 方法二:通过图形界面添加 1. 打开 `Windows Defender 防火墙` → `高级设置` 2. 点击左侧 `入站规则` → 右侧 `新建规则` 3. 选择 `端口` → 下一步 4. 选择 `TCP`,特定本地端口:`25432` → 下一步 5. 选择 `允许连接` → 下一步 6. 选择所有配置文件(域、专用、公用)→ 下一步 7. 名称:`XYZW Token Manager - 25432` → 完成 ### 3. 路由器端口转发配置(如需要) 如果你的服务器在NAT后面,需要在路由器配置端口转发: - 外部端口:25432 - 内部端口:25432 - 内部IP:[服务器的内网IP] - 协议:TCP - 备注:IPv6通常不需要NAT,可直接访问 ### 4. 验证部署 #### 本地验证 ```bash # IPv4本地访问 curl http://localhost:25432 # IPv6本地访问 curl http://[::1]:25432 ``` #### 远程验证 ```bash # 通过域名访问 curl http://winnas.whtnas.top:25432 # 直接IPv6访问 curl http://[你的IPv6地址]:25432 ``` 或在浏览器中访问: - http://winnas.whtnas.top:25432 ### 5. 安全建议 1. **定期更新依赖** ```bash npm update ``` 2. **使用HTTPS(可选)** - 考虑使用反向代理(如Nginx)配置SSL证书 - 推荐使用Let's Encrypt免费证书 3. **限制访问来源** - 如果不需要公网访问,可以只允许特定IP - 在防火墙规则中添加远程IP限制 4. **监控日志** - 定期检查访问日志 - 关注异常访问行为 ## 常见问题 ### Q1: 无法通过域名访问 - 检查DNS是否正确解析:`nslookup winnas.whtnas.top` - 检查防火墙规则是否生效 - 确认服务是否正常运行:`netstat -ano | findstr 25432` ### Q2: 只能本地访问,外网无法访问 - 检查服务器的公网IPv6地址是否正确 - 确认防火墙允许外部访问 - 检查路由器是否有IPv6防火墙规则 ### Q3: IPv6无法访问 - 确认本地网络支持IPv6 - 检查DNS的AAAA记录是否正确 - 测试IPv6连通性:`ping -6 winnas.whtnas.top` ### Q4: 端口被占用 ```bash # 查看端口占用情况 netstat -ano | findstr 25432 # 结束占用端口的进程 taskkill /F /PID [进程ID] ``` ## 维护命令 ```bash # 查看防火墙规则 Get-NetFirewallRule -DisplayName "*XYZW*" # 禁用防火墙规则 Disable-NetFirewallRule -DisplayName "XYZW Token Manager - 25432" # 启用防火墙规则 Enable-NetFirewallRule -DisplayName "XYZW Token Manager - 25432" # 删除防火墙规则 Remove-NetFirewallRule -DisplayName "XYZW Token Manager - 25432" # 查看端口监听状态 netstat -ano | findstr 25432 ``` ## 配置文件说明 ### vite.config.js 服务器配置通过环境变量控制: - `VITE_PORT`: 服务端口(默认3001) - `VITE_HOST`: 监听地址(默认0.0.0.0,监听所有接口) ### 域名白名单 在 `vite.config.js` 中配置: ```javascript allowedHosts: ['winnas.whtnas.top', 'localhost', '127.0.0.1'] ``` 如需添加其他域名,请在此数组中添加。 ## 技术支持 如遇到问题,请检查: 1. Node.js版本(建议v18+) 2. npm依赖是否完整安装 3. 系统防火墙配置 4. 网络连通性 --- 最后更新:2025-10-10