uni-app打包h5并部署到nginx,路由模式history

uni-app打包有些坑,当时运行的基础路径填写了./,导致在二级页面刷新之后,页面直接空白。就只能换一个路径了,nginx也要跟着改,下面是具体步骤。

manifest.json配置web

运行路径写/h5/,或者写你们网站的目录,比如我这里写了h5,到时候访问的地址就是127.0.0.1/h5,对,带了一个h5

nginx配置

需要在nginx里面配置一个/h5配置,然后我这里还配置了一个location /的,让他重定向到/h5,这样用户输入127.0.0.1的时候会重定向127.0.0.1/h5,这个可以按需添加。

txt 复制代码
server {
        listen 80;
        server_name localhost;

        # 重定向根路径 / 到 /h5
        location / {
            return 301 /h5;
        }
		
		# 访问/h5的配置
        location /h5 {
            root html/webH5;
            index index.html index.htm;
            try_files $uri $uri/ /h5/index.html;
        }
		
		# 访问后台接口的配置
        location /web/server/ {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_pass http://localhost:8080/web/server/;
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root html;
        }
    }

打包成网站

把打包之后的文件,丢到nginx里面的\html\webH5\h5目录下面,如果你的文件不是放到这个地方的,那就改一下nginx的root html/webH5;配置,改成你自己的目录

打包之后请求后台地址想用相对地址的话,可以参考uni-app打包成H5使用相对路径

相关推荐
八月林城5 分钟前
echarts在uniapp中使用安卓真机运行时无法显示的问题
android·uni-app·echarts
哈贝#8 分钟前
vue和uniapp聊天页面右侧滚动条自动到底部
javascript·vue.js·uni-app
iOS阿玮2 小时前
苹果2024透明报告看似更加严格的背后是利好!
uni-app·app·apple
�FENG4 小时前
LVS、NGINX、HAPROXY的调度算法
nginx·lvs·haproxy·调度算法
邹荣乐5 小时前
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合
前端·微信小程序·uni-app
不吃糖葫芦36 小时前
App使用webview套壳引入h5(三)——解决打包为app后在安卓机可物理返回但是在苹果手机无法测滑返回的问题
uni-app·webview
哈哈哈哈哈哈哈哈哈...........8 小时前
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
tcp/ip·nginx·lua
半兽先生10 小时前
uniapp微信小程序视频实时流+pc端预览方案
微信小程序·uni-app·音视频
Adorable老犀牛12 小时前
负载均衡将https请求转发后端http服务报错:The plain HTTP request was sent to HTTPS port
nginx·http·https·负载均衡
胡斌附体19 小时前
uniapp路由跳转toolbar页面
小程序·uni-app·switch·路由·type·uview-ui