环境

代码:uniapp+vue
线上环境:nginx
H5项目编译目录:如移动端名称“h5”,放在域名执行的根目录

问题分析

本地正常,线上404,是文件未找到,即文件路径错误,即域名:
www.yourdomain.com/h5 //正常访问
内页刷新404,原因看链接,正常是404链接是没有查h5里面的js,css,而是域名目录下的js,css,那就是针对目录问题,让程序执行/h5目录下的js,css

nginx配置
location /h5 {
	root  /www/wwwroot/jiaxin/public/h5; 
	#alias /www/wwwroot/jiaxin/public/h5; #这样也可以
	try_files $uri $uri/ /index.html last;
}

其他简单粗暴的方案:单独配域名,移动和PC、API各配一个域名

history的打包方式,去#
在这里插入图片描述
如:
H5域名:
h5.domain.com
//执行服务器目录:服务器文件路径/h5
nginx配置:

location / {
  try_files $uri $uri/ /index.html;
}

pc.domain.com
//执行服务器目录:服务器文件路径/pc
nginx配置:

location / {
  try_files $uri $uri/ /index.html;
}

api.domain.com
//根据语言框架配置

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐