uniapp打包

news2025/1/13 10:20:23

niapp 的打包首先要先配置,配置好了才能去进行打包,如图所示。 这只是第一步。 

注意:

1.运行基础路径最好用 ./ ,如果配置了其他请自行添加路径。

2.由于uniapp 的特性,所以导致了不支持 history 模式,只能支持 hash 模式( 路径会带 # )

3.千万千万不能勾选摇树优化( 如果项目引用了其他组件,则会报错 node模块找不到组件,实际上是由于摇树优化,裁剪了一部分没有使用的组件,导致 node模块的缺失 )

上面只是第一步,第二步的配置来了。

1. pubilcPath 的路径要和上图的运行基础路径一致,这是第一点。

2.disableHostCheck 要设置为true( 禁止访问本地host文件 )

3.router 的base,最好设置为 ./ ( 一致化,本人没有试过使用加了其他的会不会产生什么变化 )

4. domain 是服务器的地址,记得改为自己的本地地址或者是服务器的地址

5.看了下面的图之后会附上代码,可以复制粘贴。

"template" : "",
        "domain" : "192.168.0.74",
        "router" : {
            "mode" : "hash",
            "base" : "./"
        },
        "publicPath" : "./",
        "devServer" : {
            "disableHostCheck" : true, //禁止访问本地host文件

            // "https" : true,
            // "port" : 8080,
            "proxy" : {
                "/api" : {
                    "target" : "http://192.168.0.202:8080", //这里使用后端服务器的地址
                    "changeOrigin" : true, //是否跨域
                    "secure" : true, // 是否支持 https 协议的代理
                    "pathRewrite" : {
                        "^/api" : ""
                    }
                }
            },
            "port" : 8080,
            "https" : true
        },

以上配置完成之后,就能进行打包了。

按图索骥即可完成

找到 H5的打包

输入网址标题以及服务器名字( 本地 nginx 则用本地地址 ),然后选择 发行就会进行打包

打完之后会出现这张图,出现选中部分就是打包成功,可以进行部署。

 找到你的项目路径,找到这个打包之后的文件夹。例下图( 这个H5就是你要用的东西,整个文件里的内容都是。 )

本地nginx的部署:

1.找到你的 nginx (个人版本:1.18.0 )

2.在你的 nginx 根目录下创建一个文件夹,例如下图。

3.可以把名字( admin )换成你想要的任何一个名字,然后打开它。把刚刚打包完的H5文件夹,丢进来。

接下来开始配置 nginx 的路径了。

1.首先找到conf文件夹

2.其次点击进去,找到nginx.conf 文件,打开它

找到 server 这一个对象

注意: 这里的端口必须和前面打包之前设置的端口一样,不然会找不到。

location 对象里的 root ,就是连接你刚刚在服务器底下创建的文件夹名字, 连接上 /h5/ 则是为了和其他路径区分开来

#user  nobody;
worker_processes 1;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {
  worker_connections 1024;
}
http {
  include mime.types;
  default_type application/octet-stream;
  #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
  #                  '$status $body_bytes_sent "$http_referer" '
  #                  '"$http_user_agent" "$http_x_forwarded_for"';
  #access_log  logs/access.log  main;
  sendfile on;
  #tcp_nopush     on;
  #keepalive_timeout  0;
  keepalive_timeout 65;
  #gzip  on;
  server {
    listen 8888;
    server_name localhost;
    root html;
    #charset koi8-r;
    #access_log  logs/host.access.log  main;
    location / {
      root  dist;
      try_files $uri $uri/ /index.html;
    }
    location /prod-api {
        proxy_pass http://192.168.0.202:8080; #后端服务器
      rewrite /prod-api/(.*) /$1 break;
        client_max_body_size    1000m;
    }
    location ^~ /admin {
      try_files $uri $uri/ /admin/index.html;
    }
    #error_page  404              /404.html;
    # redirect server error pages to the static page /50x.html
    #
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
      root html;
    }
    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
  }
  # another virtual host using mix of IP-, name-, and port-based configuration
  #
  #server {
  #    listen       8000;
  #    listen       somename:8080;
  #    server_name  somename  alias  another.alias;
  #    location / {
  #        root   html;
  #        index  index.html index.htm;
  #    }
  #}
  # HTTPS server
  #
  #server {
  #    listen       443 ssl;
  #    server_name  localhost;
  #    ssl_certificate      cert.pem;
  #    ssl_certificate_key  cert.key;
  #    ssl_session_cache    shared:SSL:1m;
  #    ssl_session_timeout  5m;
  #    ssl_ciphers  HIGH:!aNULL:!MD5;
  #    ssl_prefer_server_ciphers  on;
  #    location / {
  #        root   html;
  #        index  index.html index.htm;
  #    }
  #}
}

最后,我们来学几条命令,用于启动 nginx 

1. start nginx ( 首次启动的命令 )

2.nginx -s reload ( 更新配置之后启动的命令 )

3.nginx -s stop( 停止nginx,关闭server 的命令 )

最后就可以直接打开访问了。( nginx 配置的 location 后面连接的 /h5/ 就是连接在这里的,如果不连接上去,会报错404 )

如果连接上去了还报错,检查路径是否写错。 如果按照我的图和我的代码来的话,是可以直达的哦亲。

例如:http://192.168.0.74:8080/h5/ ( 这样会跳转到你代码设置的默认首页 ),如图所示:

最后,附上一位可爱的小姐姐写的原创博客,她的内容给了我蛮大的帮助。

所以我也写了一遍,内容比较详细,按图索骥即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/468227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第13届蓝桥杯国赛真题剖析-2022年5月29日Scratch编程初中级组

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第127讲。 第13届蓝桥杯Scratch国赛真题,这是2022年5月29日举办的全国总决赛,比赛仍然采取线上…

三分钟教你看懂 spring 官方文档

新手如何学会查看官方文档API 首先进入官网:这里以 spring boot 为例 ,进入spring 官方地址 我们进入 spring boot 这里我们要看文档当然是要 learn 了,所以点进去。 我需要的东西在 IO 模块里面,点 IO 进入 发送邮件是不是有了…

python+nodejs+php+springboot+vue 高校大学生创业管理系统

本论文主要论述了如何使用java语言开发一个高校创新创业管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,面向对象编程思想进行项目开发。在引言中,将论述高校创新创业管理系统的当前背景以及系统开发的目的,后续章节将…

node注册和登录你真的清楚了吗?

文章目录 1.创建数据表1.1 创建用户表 2安装并配置mysql文件2.1安装mysql模块2.2 在db index中 3.注册功能3.1检测表单数据合法3.2判断用户占用3.3 密码加密3.4 插入用户封装错误处理函数 4.登录功能4.1 登录密码的判断4.2 生成token字符4.3 解析token中间件 1.创建数据表 1.1…

AD9208子卡设计资料: 2 路 2.6GSPS/3GSPS AD 采集、2 路 12.6G DA 回放、高性能时钟发生器HMC7044 -FMC 子卡模块

板卡概述 FMC123 是一款基于 FMC 标准规范,实现 2 路 14-bit、3GSPSADC 采集功能、2 路 16-bit 12.6GSPS 回放子卡模块。该模块遵循 VITA57.1 标准,可直接与 FPGA 载卡配合使用,板卡 ADC 器件采用 ADI 公司的 AD9208 芯片,&…

如何在Linkedin领英上找客户

LinkedIn是很多想要获客的朋友,不错的选择,它是一家全球职业社交平台,目前全球会员人数已达6亿之多。在领英,我们可以轻松打造职业形象、获取商业洞察、拓展职业人脉并发现更多职业机遇。 Linkedin主要的作用有以下四点 &#xf…

API 文档管理得这么玩,才会效率加倍

随着互联网的迅速发展,越来越多的企业和开发者开始采用 API 接口作为数据交换和服务调用的标准方式。为了保证API接口的可靠性、稳定性和可维护性,API 文档管理变得愈发重要。 API 文档管理的重要性 API 文档管理是指在开发过程中,对API接口…

Seurat -- ScaleData学习

brief seurat提供了一个教学,其中global scale normalization之后又对数据进行了scale。 默认是对上一步 selected highly variable features进行scale。 概要图以及系列博文可以参见链接。 如果是 SCTransform则不需要手动运行这一步。 下面是就是教程提供的流程…

为什么软件iic需要用开漏输出和上拉电阻

1、疑惑: 不知道大家有没有这种疑惑,在软件iic的配置过程当中,有些时候要输出高低电平,为什么使用开漏输出而不是推挽输出? 2.推挽输出和开漏输出的区别 推挽输出: 输出逻辑0,则N-MOS激活;输…

<C++>类和对象-上

目录 前言 一、类的引入 二、类的定义 1.类的两种定义方式 三、类的访问限定符及封装 1.访问限定符 2.封装 四、类的作用域 五、类的实例化 六、类对象模型 1.计算类对象的大小 2 类对象的存储方式猜测 3. 结构体内存对齐规则 七、this指针 1. 引入 2 this指针的特性 总结 前言…

ChatGPT帮你调用PID算法【结合代码】

目录 PID算法是一种控制算法 下面分别介绍PID算法中的三个参数 MATLAB代码实现PID MATLAB代码实现PID PID算法是一种控制算法 用于控制系统的稳定性和精度。PID算法的名称来源于其三个组成部分:比例(P)、积分(I)和微…

CVE漏洞复现-CVE-2021-22205 GitLab未授权 RCE

CVE-2021-22205 GitLab未授权 RCE 漏洞背景和描述 2021年4月15日,GitLab官方发布安全补丁更新修复了GitLab命令执行漏洞(CVE-2021-22205)。由于GitLab中的ExifTool没有对传入的图像文件的扩展名进行正确处理,攻击者通过上传特制…

不得不说的结构型模式-外观模式

目录 ​编辑 1. 什么是外观模式 1.1外观模式的结构: 2实际案例: 3下面是面试中关于装饰器模式的常见的问题: 3.1下面是问题的答案: 1. 什么是外观模式 Facade模式也叫外观模式, Facade模式为一组具有类似功能的类群&#xff…

3ASC25H214 DATX130以力控制为基础的装配应用方面已经形成了一个解决方案

​ 3ASC25H214 DATX130以力控制为基础的装配应用方面已经形成了一个解决方案 ABB的机器人解决方案最终选择了IRB6400机器人 ABB的解决方案 ABB一直都在不断地研究和开发机器人应用的新技术,有一部分研究活动是与大学进行合作的,其中一项是ABB的科学家和…

数据建模方法论及实施步骤

了解数据建模之前首先要知道的是什么是数据模型。数据模型(Data Model)是数据特征的抽象,它从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表示与操作提供一个抽象的框架。 一、概要:数据…

关于数据包丢失你需要知道的一切(以及如何避免它)

当数据从一个地方传输到另一个地方时,一些数据包可能会被延迟、损坏甚至丢失。这就是所谓的数据包丢失。这很常见,但这并不意味着你必须接受它! 数据包丢失、延迟、抖动——如果你注意到互联网性能不佳,你可能会遇到其中一种或多种情况。 延迟与速度有关,但什么是数据包…

AP9193 升压恒流驱动芯片 24V 36V1A三线三色 LED大功率方案

AP9193 是一款高效率、高精度的升 压型大功率 LED 灯恒流驱动控制芯片。 应用领域 LED 灯杯 电池供电的 LED 灯串 平板显示 LED 背光 恒流充电器控制 大功率 LED 照明 AP9193 内置高精度误差放大器,固 定关断时间控制电路,恒流驱动电路等, …

【云原生Kubernetes】01-Kubernetes简介

【云原生Kubernetes】01-Kubernetes简介 文章目录 【云原生Kubernetes】01-Kubernetes简介前言kubernets概述为什么要使用Kubernetes?Kubernetes能做什么?Kubenets架构架构图架构组件说明Master节点Node节点Etcd节点 组件间的工作流程 Kubernetes的核心技术Pod副本…

Spring boot 集成Skywalking

一、Skywalking官网 Apache SkyWalking 备注:本文使用的V9.0.0版本 二、SkyWalking服务端安装 1.下载SkyWalking APM 2.解压直接启动bin下的startup.bat 3. 日志查看 见logs/skywalking-oap-server.log 4.监控平台默认地址访问 http://127.0.0.1:8080 如需修…

九款顶级AI工具推荐

ChatGPT OpenAI开发的最强对话系统 地址:chat.openai.com ChatGPT能够在同一个会话期间内回答上下文相关的后续问题。其在短时间内引爆全球的原因在于,在网友们晒出的截图中,ChatGPT不仅能流畅地与用户对话,甚至能写诗、撰文、编…