小程序not 404

在 uni-app 的 H5 项目中,出现 Failed to load resource: 404 (Not Found) 报错,通常分为两种情况。你可以对照以下场景来排查:

场景一:页面刷新后,整个页面报 404(最常见)

如果你能通过点击按钮正常跳转页面,但一按浏览器刷新按钮(或直接输入某个子页面的 URL 访问)就出现 404,这是因为 uni-app 的 H5 默认使用了 history 路由模式。服务器找不到对应的物理文件路径,所以返回了 404。

解决方法:配置服务器的路由回退(Fallback)

你需要告诉服务器:当找不到对应的文件时,统一返回 index.html,让前端路由来接管页面渲染。

  • 如果你使用的是 Nginx 服务器 :
    在 Nginx 的配置文件(nginx.conf 或站点配置)中,找到对应的 location / 块,添加或修改为以下配置:

    复制代码
    location / {
        try_files $uri $uri/ /index.html;
    }
  • 如果你使用的是 Apache 服务器 :
    在项目根目录下新建或修改 .htaccess 文件,添加以下代码:

    复制代码
    <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index\.html$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.html [L]
    </IfModule>
  • 如果你使用的是云存储(如阿里云 OSS、腾讯云 COS) :
    需要在静态网站托管的设置中,将"默认首页"和"默认404页"都设置为 index.html。


场景二:页面空白,控制台提示 JS/CSS/图片等静态资源 404

如果页面打开是空白的,且控制台报错的路径是类似 https://你的域名/static/js/app.js 找不到,这说明静态资源的路径配置错了 。通常是因为你把项目部署在了服务器的子目录(如 https://example.com/myapp/),但 uni-app 默认会去根目录 / 找资源。

解决方法:修改 manifest.json 中的 H5 配置

  1. 打开项目根目录下的 manifest.json 文件。

  2. 找到 h5 配置项,修改 publicPath 和路由的 base。

  3. 最简单通用的改法是将其设置为相对路径 ./:

    "h5": {
    "publicPath": "./",
    "router": {
    "mode": "history",
    "base": "./"
    }
    }

(注:如果你明确知道部署的子目录是 /myapp/,也可以将上面两个值都改为 "/myapp/",但记得末尾的斜杠要一致。)

修改完成后,一定要重新执行 H5 打包(npm run build:h5 或在 HBuilderX 中重新发行),并将打包后的 dist 目录重新上传到服务器。


💡 避坑小贴士

  • 本地开发没问题,上线就 404? 这是因为本地开发服务器(如 webpack-dev-server)自带了路由回退功能,而线上的 Nginx/Apache 没有配置。
  • 修改配置后记得清缓存:如果你使用了 CDN 或浏览器有强缓存,修改配置重新部署后,建议清除一下 CDN 缓存或使用浏览器的"无痕模式"测试,避免旧的 404 状态被缓存。

你可以先判断一下是页面路径 404 还是 静态资源(js/css)404,然后按对应的方法去调整。如果还有报错细节,随时发给我!

相关推荐
云-缩影21 小时前
做微信小程序,自建服务器还是用云托管:技术选型对比
服务器·微信小程序·小程序
超级新零售2 天前
服装订货会数字化:商品版本、订单状态与后续配发数据如何衔接?
大数据·小程序·企业微信
xiezhr2 天前
我用workBuddy开发了自己的第一个小程序并成功上线了
ai·小程序·ai agent·workbuddy
sinat_267611912 天前
用 AI 开发微信小程序(八):一个极简收纳工具的开发复盘
微信小程序·小程序
李纲明3 天前
微信小程序真机预览白屏或 request 失败:先核 request 合法域名与 TLS,再查体验版与本地缓存
缓存·微信小程序·小程序·小程序开发·devdiy·真机预览·合法域名
klfdgl3 天前
线上商城小程序投入测算,有成熟开发经验服务商的长期收益对比
小程序
一木 之林4 天前
Dify学习笔记 03 · RAG检索增强生成:三代范式、评估与落地(第40-45、55-56集)
笔记·小程序·交互·dify
赵小哥要冲啦4 天前
社区邻里互助小程序从 0 到 1 复盘:需求拆解与信任机制设计
java·小程序·需求分析
河北清兮网络科技4 天前
石家庄做一套企业知识库系统多少钱?2026 报价明细
小程序·短剧app·广告联盟
Ai-_Man4 天前
Coze扣子还是不可以导出左侧所有对话,只能点进去单条内容导出,方法不对吗?
开发语言·人工智能·ai·小程序·1024程序员节