likeadmin编译后404
likeadmin编译后404
likeadmin编译后404

用户925191904
02月01日
|
浏览 11
编译后出现 404 错误通常是由于前端路由配置与服务器设置不匹配导致的。以下是常见原因和解决方案:
1. 检查路由模式
- 问题:Vue/React 等 SPA 应用默认使用
history模式,但生产服务器未配置 URL 重写。 - 解决:
- 方案 A:将路由模式改为
hash模式(如 Vue Router 的mode: 'hash'),重新编译部署。 - 方案 B:保持
history模式,在服务器配置中将所有请求重定向到index.html。
- 方案 A:将路由模式改为
2. 配置服务器重写规则
根据你的服务器类型进行配置:
-
Nginx:
复制代码location / { try_files $uri $uri/ /index.html; } -
Apache:
复制代码RewriteEngine On RewriteBase / RewriteRule ^index\.html$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.html [L] -
Tomcat:在
web.xml中添加:复制代码<error-page> <error-code>404</error-code> <location>/index.html</location> </error-page>
3. 检查静态资源路径
- 确认
vue.config.js(Vue)或package.json(React)中的publicPath是否正确(例如设为'./'或对应子目录路径)。 - 确保编译后的文件已正确上传到服务器目标目录。
4. 验证部署目录结构
- 编译后的
dist文件夹应直接包含index.html和静态资源(如js、css文件夹)。 - 如果部署到子路径(如
domain.com/admin),需同步调整路由base和资源路径。
5. 清除缓存
- 清理浏览器缓存或尝试无痕模式访问。
- 检查服务器是否启用了缓存(如 CDN),必要时刷新缓存。
快速排查步骤:
- 直接访问
http://your-domain.com/index.html,若正常则确认是路由问题。 - 检查浏览器开发者工具(Network 标签)的请求状态和路径。
- 对比本地运行与线上环境的配置差异。
如需继续排查,请点击下方【🔍追问按钮】提交补充信息
我要提问
复制内容
分享给好友
AI编程问答网 免责声明:
以上内容除特别注明外均来源于网友提问,AI编程问答网回答,权益归原著者所有;
上一篇: 已经是第一篇了~
