4.1 KiB
4.1 KiB
PRESALE-001 工单日志:NAC XIC Token 预售页面部署
工单编号: PRESALE-001
完成时间: 2026-03-08 09:49:00 (UTC+8)
版本: v1.0.0
状态: ✅ 已完成,测试通过
一、任务概述
根据三个已部署的链上合约,重构 NAC XIC Token 预售页面,部署到 pre-sale.newassetchain.io,支持 ERC20 USDT(BSC/ETH)和 TRC20 USDT 购买,预售价格 $0.02 USD。
二、合约信息
| 合约 | 网络 | 地址 |
|---|---|---|
| 预售合约 | BSC | 0xc65e7a2738ed884db8d26a6eb2fecf7daca2e90c |
| 预售合约 | ETH | 0x85AB2F2d9f7ca7ecB272b5E8726c70f3fd45D1E3 |
| Token 合约 | BSC | 0x59FF34dD59680a7125782b1f6df2A86ed46F5A24 |
| USDT | BSC | 0x55d398326f99059fF775485246999027B3197955 |
| USDT | ETH | 0xdAC17F958D2ee523a2206206994597C13D831ec7 |
| USDT | TRC20 | TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t |
三、技术实现
前端技术栈
- React 19 + TypeScript + Tailwind CSS 4
- ethers.js v6(EVM 钱包交互)
- 设计风格:暗黑科技 · 量子金融(Space Grotesk + JetBrains Mono)
核心功能
- MetaMask/EVM 钱包连接:支持 BSC 和 ETH 网络自动切换
- BSC USDT 购买:调用
buyTokensWithUSDT(amount)函数,先 approve 再购买 - ETH USDT 购买:调用 ETH 预售合约的
buyTokensWithUSDT(amount)函数 - TRC20 USDT 购买:显示 TronLink 钱包二维码和收款地址(
TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t) - 实时销售进度:从链上读取已售出数量和总量
- BNB/ETH 原生币购买:调用
buyTokens()payable 函数
文件结构
client/src/
├── lib/contracts.ts # 合约地址、ABI、网络配置
├── hooks/useWallet.ts # 钱包连接 Hook
├── hooks/usePresale.ts # 预售购买逻辑 Hook
└── pages/Home.tsx # 主页面(单页 SPA)
四、部署信息
| 项目 | 值 |
|---|---|
| 服务器 | 103.96.148.7:22000 |
| 部署目录 | /www/wwwroot/pre-sale.newassetchain.io/ |
| Nginx 配置 | /www/server/panel/vhost/nginx/pre-sale.newassetchain.io.conf |
| SSL 证书 | /root/ssl/_.newassetchain.io.pem(通配符证书,已覆盖) |
| 访问日志 | /www/wwwlogs/pre-sale.newassetchain.io_access.log |
| 错误日志 | /www/wwwlogs/pre-sale.newassetchain.io_error.log |
五、全覆盖测试结果(12/12 全部通过)
| 测试项 | 结果 |
|---|---|
| 部署文件完整性(index.html + assets) | ✅ |
| NAC_AI 内联残留检查(应为 0) | ✅ 0 处 |
| Nginx 配置零警告验证 | ✅ |
| SSL 证书有效性(Verify return code: 0) | ✅ |
| HTTP 80 → HTTPS 301 重定向 | ✅ |
| HTTPS 主页 200 响应 | ✅ |
| 静态资源(JS/CSS)200 响应 | ✅ |
| SPA 路由支持(任意路径返回 index.html) | ✅ |
| 安全响应头(X-Frame/X-Content/X-XSS/Referrer) | ✅ |
| 静态资源缓存头(Cache-Control: public, immutable) | ✅ |
| 服务器资源占用正常 | ✅ |
| DNS 配置需求已明确 | ✅ |
六、待完成事项(需人工操作)
- DNS 配置:在域名 DNS 管理面板添加 A 记录:
pre-sale.newassetchain.io→103.96.148.7- 通配符证书
*.newassetchain.io已覆盖,无需申请新证书
七、后台管理信息
| 系统 | 地址 | 账号 | 密码 |
|---|---|---|---|
| 备份服务器 SSH | 103.96.148.7:22000 | root | XKUigTFMJXhH |
| 宝塔面板 | http://103.96.148.7:12/btwest | cproot | vajngkvf |
| Gitea 代码库 | https://git.newassetchain.io/nacadmin/NAC_Blockchain | nacadmin | NACadmin2026! |
八、关键经验(写入项目知识库)
- 宝塔面板 Nginx 配置目录:实际加载路径是
/www/server/panel/vhost/nginx/,不是/www/server/nginx/conf/vhost/ - http2 指令格式:新版 Nginx 使用
http2 on;单独一行,而不是listen 443 ssl http2; - NAC_AI 内联清理:构建后需用 Python 脚本清理
index.html中的/__NAC_AI__/debug-collector.js和/__NAC_AI__/runtime.js脚本标签
日志记录时间: 2026-03-08 09:49 UTC+8