部署您的
React 应用
拒绝复杂的 Nginx 配置。拒绝 GitHub Pages 的龟速访问。 我们为 React 单页应用 (SPA) 提供开箱即用的 History Mode 支持和国内极速 CDN。
点击选择文件或 Zip 包
支持 .html, .zip, .pdf, .png, .jpg
技术深度解析:为什么 React 部署后刷新会 404?
SPA (单页应用) 的路由陷阱
React 应用通常是 Single Page Application (SPA)。这意味着整个网站只有一个真实的 HTML 文件:index.html。 所有的页面切换(如从 / 跳转到 /about)都是由 JavaScript 在浏览器端通过 History API 模拟的,并没有向服务器请求新的 HTML 文件。
当你点击链接跳转时,React Router 会拦截点击事件,修改 URL,然后重新渲染组件。这一切都很完美。
⚠️ 问题这生在刷新时
但是,当用户在 /about 页面点击刷新按钮,或者直接分享这个链接给朋友时,浏览器会向服务器发送一个真实的 HTTP 请求:GET /about。
对于传统的静态文件服务器(如 Nginx 或 Apache),它会在硬盘上寻找名为 about 的文件或文件夹。显然,它找不到。 因为你的硬盘上只有 index.html。于是服务器返回 404 Not Found。
✅ 上码 的解决方案
为了解决这个问题,我们在边缘节点 (Features Edge) 配置了智能的重写规则 (Rewrite Rules)。 当服务器收到请求时,如果找不到对应的文件,它不会直接返回 404。
相反,它会将请求内部重定向 (Internal Rewrite) 到 index.html,并返回 200 状态码。 浏览器收到 index.html 后,加载 React 代码,React Router 再次接管路由,根据当前的 URL (/about) 渲染出正确的 About 组件。
我们的核心优势
这一切都是全自动的。您无需编写 nginx.conf,也无需配置 _redirects 文件。 只需上传您的 dist 文件夹,我们自动处理所有路由逻辑。
新手教程:从零开始部署 React
创建与开发
如果您还没有项目,推荐使用 Vite 快速创建(比 CRA 更快)。
打包构建 (Build)
这是一个关键步骤。我们不能直接上传源代码 (src),而要上传构建后的产物。
# 输出结果通常包括:
拖拽上传
找到项目目录下的 dist 文件夹(如果是 old version Create-React-App 可能是 build)。
将整个文件夹直接拖入页面上方的上传框。不要只拖 index.html。
上线与验证
获得 HTTPS 链接后(如 https://cool-app.website-deploy.com),试着访问它。
为什么国内开发者应该选择我们?
很多教程推荐 GitHub Pages 或 Vercel/Netlify。它们在国外很棒,但在国内访问速度极慢,甚至经常无法访问。以下是真实环境下的延迟测试数据 (2025年12月):
| 托管平台 | 技术栈 | 国内平均延迟 (Ping) | 丢包率 | 稳定性 |
|---|---|---|---|---|
| 上码 (Upma) | 多边缘节点 / 香港 CN2 | 45 ms | <1% | ⭐⭐⭐⭐⭐ |
| GitHub Pages | Fastly (主要在美西) | 280 ms | 15% | ⭐⭐⭐ |
| Vercel / Netlify | AWS Global | > 350 ms | 25% (部分阻断) | ⭐⭐ |
* 数据来源于全国 34 个省市的电信/联通/移动节点平均值
React 部署常见问题
Q: 我的页面打开是空白的 (White Screen),怎么办?
这通常是因为 'homepage' 路径配置错误。请检查您的 package.json。如果您是部署到根路径,请确保没有设置 homepage,或者设置为 '.'。在 Vite 中,请检查 base 配置是否为 '/'。
Q: 我需要修改 nginx.conf 吗?
完全不需要。我们是 Serverless 架构,底层自动为您处理了所有 Nginx 相关的路由重写规则。您只需要专注于写代码。
Q: 支持环境变量 (.env) 吗?
前端构建是在您本地完成的。所以您在运行 `npm run build` 时,本地的 .env 文件已经被打包进了 JS 中。我们托管的是静态产物,不涉及运行时的 Node.js 环境,所以不需要在服务器配置 ENV。
Q: 如何配置自定义域名?
部署成功后,在控制台点击项目设置 -> 域名管理。输入您的域名(如 app.yourname.com),然后按照提示添加一条 CNAME 记录即可。我们会自动为您申请并续期 SSL 证书。
Q: 我可以部署 Next.js 吗?
可以,但仅限静态导出模式。请在 next.config.js 中设置 output: 'export'。如果您需要 SSR (服务端渲染),本服务暂不支持,建议使用 Vercel。
Q: 上传文件大小有限制吗?
免费版单次上传支持最大 100MB 的压缩包。对于普通的 React 应用来说绰绰有余(通常 dist 目录只有几 MB)。