nginx打包部署前端vue项目全过程【保姆级教程】

    🤹‍♀️潜意识起点:个人主页

🎙座右铭:得之坦然,失之淡然。

💎擅长领域:前端

是的,我需要您的:

🧡点赞❤️关注💙收藏💛

是我持续下去的动力!


目录

一. 打包

1.1 打包命名

1.2 打包命令执行

1.3 如何看是否打包成功

二. 下载nginx打包文件

2.1 解压文件

​编辑 2.2 打开文件

 三 . 部署到nginx 

3.1 打开dist 

3.2 部署到nginx 

四. 启动nginx 

 4.1 启动nginx

4.2 打开项目

五.nginx打包好处【不用看,上面完成了就可以了】 


一. 打包

1.1 打包命名

npm run build

1.2 打包命令执行

上面的打包命令在终端中执行即可,这里主要是vue项目的打包部署全过程

1.3 如何看是否打包成功

多了个dist文件夹就是打包成功了! 

二. 下载nginx打包文件

可以去官网里面去下载,这是我从官网中下载下来的。

nginx下载教程

2.1 解压文件

如图所示【一定要在全英文路径下,否则会出现莫名其妙的报错】 

 2.2 打开文件

 三 . 部署到nginx 

3.1 打开dist 

我们的文件可能不同,反正复制所有文件即可!

3.2 部署到nginx 

打开html 

然后把刚刚复制的全部粘贴到html中! 

这样就成功了! 

四. 启动nginx 

 4.1 启动nginx

点最下面的nginx.exe,会闪一下,就是打开了 

4.2 打开项目

 nginx的端口号默认端口是80

因此随便一个浏览器访问 localhost:80  即可打开部署好的前端项目

4.3 打开localhost:80,如果有页面,那么就是成功了

五.nginx打包好处【不用看,上面完成了就可以了】 

使用 Nginx 打包和部署前端项目有以下几个好处:

  1. 高性能:Nginx 以其高效的事件驱动架构,能够处理大量并发连接,适合高流量网站。

  2. 静态文件服务:Nginx 在处理静态文件(如 HTML、CSS、JavaScript 和图片)方面效率极高,加载速度快。

  3. 反向代理:可以将请求转发到后端服务器,支持负载均衡和跨域请求处理,提升系统的灵活性。

  4. 缓存支持:Nginx 可以配置缓存,提高响应速度,减少服务器负担。

  5. HTTPS 支持:能够轻松配置 SSL/TLS,确保数据的安全传输。

  6. 配置简单:Nginx 的配置文件易于理解和修改,适合快速部署和调整。

  7. 模块化扩展:支持多种模块,可以根据需要添加功能,如压缩、限速等。

  8. 日志记录:提供详尽的访问和错误日志,有助于监控和调试。

  9. 支持 SPA(单页应用):可以方便地配置路由,使得 SPA 应用在刷新时仍然能正常工作。

  10. 社区支持:广泛使用,拥有丰富的文档和社区资源,便于解决问题。

  11. 负载均衡:Nginx 可以配置为负载均衡器,将请求分发至多个后端服务器,提高应用的可扩展性和可靠性。

  12. 支持 WebSocket:能够处理 WebSocket 连接,适合需要实时通信的应用,如聊天应用或在线游戏。

  13. 流量控制:可以通过配置限流、限速等策略,保护后端服务不被过载。

  14. 自定义错误页面:支持自定义错误页面(如 404、500),提升用户体验。

  15. 跨域资源共享 (CORS):可以轻松配置 CORS 头,方便与前端进行跨域请求。

  16. 集成 CDN:可以将静态资源通过 CDN 加速,提高全球用户的访问速度。

  17. 便于 CI/CD 集成:与持续集成和持续部署流程兼容,方便自动化更新和部署。

  18. 模块化配置:支持将配置分成多个文件,便于管理和组织复杂的配置。

  19. 动态内容处理:虽然主要用于静态文件,但也可以与其他应用服务器(如 Node.js、PHP、Python)协同工作,处理动态内容。

  20. 安全性增强:可以配置防止常见攻击(如 DDoS 攻击、SQL 注入)的措施,增强整体安全性。

  21. 监控与分析:与各种监控工具(如 Prometheus、Grafana)结合使用,方便对流量和性能进行分析。

  22. 快速恢复:Nginx 的高可用性和故障恢复机制可以确保在服务出现问题时迅速恢复,降低停机时间。

  23. 灵活的重定向:可以轻松实现 URL 重定向和重写,优化 SEO 和用户体验。

  24. 多站点支持:可以在同一台服务器上托管多个网站,通过虚拟主机功能进行管理。

  25. 高效的资源利用:Nginx 的低内存占用使其能够在资源有限的环境中有效运行。

  26. 内容压缩:支持 Gzip 等压缩技术,减小传输文件大小,提高加载速度。

  27. 自动化配置更新:可以通过 API 或脚本自动更新配置,方便与 DevOps 流程集成。

  28. SSL/TLS 终止:Nginx 可以处理 SSL/TLS 加密,减轻后端服务器的负担。

  29. 静态资源版本控制:可以通过文件名中的哈希值管理缓存,确保用户访问的是最新版本的静态资源。

  30. 简单的负载监控:提供基本的请求统计和性能监控功能,方便了解流量情况。

  31. 支持 HTTP/2:可以提升加载速度和性能,改善用户体验。

  32. 环境隔离:可以为不同的应用或环境(如开发、测试和生产)配置不同的 Nginx 实例,保持环境之间的隔离


    🤹‍♀️潜意识起点:个人主页

🎙座右铭:得之坦然,失之淡然。

💎擅长领域:前端

是的,我需要您的:

🧡点赞❤️关注💙收藏💛

是我持续下去的动力!

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

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

相关文章

Python字符串string方法大全及使用方法[1]以及FastAPI框架文件上传的处理-client使用postman

一、Python字符串string方法大全及使用方法[1] 1. Python字符串string方法大全及意义解释 #将字符串的第一个字符转换为大写 capitalize() #返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。 center(width, fillchar) #返…

磁编码器磁铁要求和安装要求

总结来说, 磁铁需要是径向两极充磁、牌号N35、直径10mm、高度2.5mm的烧结钕铁硼磁铁。 磁铁的固定套必须是非导磁材料,比如铜、铝、塑料。 磁铁要距离电机轴至少2mm以上。 磁铁距离磁编码芯片0.5~3mm,最好1到2mm。 使用磁编码器的伺服&#…

css设置文本样式属性

目录 1.font-size:字体大小 案例:通过font-size属性设置字体的大小 1.代码 2.效果 2.font-family:字体的展现形式 案例:使用font-family属性设置字体的风格 1.代码实现 2.效果 3. font-weight:字体的粗细 案例:使用font-weight定义…

基于SSM+Vue技术的定制式音乐资讯平台

文未可获取一份本项目的java源码和数据库参考。 一、选题的背景与意义: 随着个人计算机的普及和互联网技术的日渐成熟,网络正逐渐成为人们获取信息及消费的主要渠道。然而在当前这个信息时代,网络中的信息种类和数量呈现爆炸性增长的趋势&a…

爱拼才会赢,甲骨文公司智算中心标配英伟达GPU10万颗

【科技明说 | 科技热点关注】 之前有有外媒消息,甲骨文宣布推出了多款智算集群,可通过甲骨文云基础设施提供AI训练服务,其中最顶级的一款配备了超过10万块的NVIDIA Blackwell GPU。 它一共使用了多达131072万块B200 GPU加速卡&…

单链表及其代码实现

目录 前言单链表1.1 单链表的定义1.2单链表代码实现1.2.1 头文件1.2.2 函数实现文件1.2.3 测试文件1.2.4 野指针问题 总结 前言 本文介绍单链表,主要是创销、增删改查代码实现。 注:文章中函数命名采取STL库。 单链表 1.1 单链表的定义 单链表是链线…

北京市大兴区启动乐享生活 寻味大兴 美食嘉年华 系列促销费活动

北京市大兴区启动乐享生活 寻味大兴 系列促销费活动 区商务局副局长 兰莉 致开幕辞 区餐饮行业协会会长 董志明 介绍活动内容 2024年9月30日,由大兴区商务局主办、大兴区餐饮行业协会承办,并得到高米店街道和大兴绿地缤纷城大力支持的“乐享生活 寻味大…

OceanBase—02(入门篇——对于单副本单节点,由1个observer扩容为3个observer集群)——之前的记录,当初有的问题未解决,目前新版未尝试

OceanBase—02(入门篇——对于单副本单节点,由1个observer扩容为3个observer集群)——之前的记录,有的问题未解决,新版未尝试 1、前言—安装单副本单节点集群1.1 docker安装OB 2、查看现有集群情况2.1 进入容器&#x…

SOMEIP_ETS_147: SD_Send_triggerEventUINT8_Eventgroup_2

测试目的: 验证DUT在Tester订阅事件组后,能够响应Tester触发的triggerEventUINT8方法,并将TestEventUINT8事件发送到订阅请求中端点选项指定的IP地址和端口。 描述 本测试用例旨在确保DUT能够正确处理事件组的订阅请求,并且在T…

VSOMEIP代码阅读整理(1) - 网卡状态监听

一. 概述 ​ 在routing进程所使用的配置文件中,存在如下配置项目: {"unicast" : "192.168.56.101",..."service-discovery" :{"enable" : "true","multicast" : "224.244.224.245&q…

在2核2G服务器安装部署MySQL数据库可以稳定运行吗?

阿里云2核2G服务器可以安装MySQL数据库吗?当然可以,并且可以稳定运行MySQL数据库,目前阿里云服务器网aliyunfuwuqi.com使用的就是阿里云2核2G服务器,在云服务器上安装MySQL数据库,可以稳定运行。 目前阿腾云用于运行M…

C++系列-继承补充

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 继承和友元 友元关系不能继承,父亲的朋友不能是你的朋友 比如在这个例子当中: class Student; class Person { public:friend void Display(const Per…

厦门网站设计的用户体验优化策略

厦门网站设计的用户体验优化策略 在信息化快速发展的今天,网站作为企业与用户沟通的重要桥梁,用户体验(UX)的优化显得尤为重要。尤其是在交通便利、旅游资源丰富的厦门,吸引了大量企业进驻。在这样竞争激烈的环境中&am…

netty之NettyServer字符串编码器

前言 netty通信就向一个流水channel管道,我们可以在管道的中间插入一些‘挡板’为我们服务。比如字符串的编码解码,在前面我们使用new StringDecoder(Charset.forName(“GBK”))进行字符串解码,这样我们在收取数据就不需要手动处理字节码。那…

linux文件编程_进程通信

1.进程间通信介绍 进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。 进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中&…

已解决:org.springframework.web.HttpMediaTypeNotAcceptableException

文章目录 写在前面问题描述报错原因分析: 解决思路解决办法1. 确保客户端请求的 Accept 头正确2. 修改 Controller 方法的 produces 参数3. 配置合适的消息转换器4. 检查 Spring 配置中的媒体类型5. 其他解决方案 总结 写在前面 在开发过程中,Spring 框…

C++容器之list基本使用

目录 前言 一、list的介绍? 二、使用 1.list的构造 2.list iterator的使用 3.list capacity 🥇 empty 🥇size 4.list element access 🥇 front 🥇 back 5.list modifiers 🥇 push_front 🥇 po…

从零到一构建解释器-【1-基础概念】

文章目录 扫描器词法分析语法分析 静态分析中间代码优化代码生成运行时单遍编译器数遍历解释器转译器即使编译编译器与解释器 本教程参考【手搓解释器】 这里只是过一遍基本概念,后面会有涉及到具体解析 扫描器 词法分析 接受字符流忽略无意义符号,如…

【Git】一文看懂Git

Git 一、简介1. Git 与 SVN 区别1.1 Git 是分布式的,SVN 不是1.1.1 分布式版本控制系统Git1.1.2 集中式版本控制系统SVN 1.2 Git 把内容按元数据方式存储,而 SVN 是按文件1.3 Git 分支和 SVN 的分支不同1.4 Git 没有一个全局的版本号,而 SVN …

《Windows PE》3.2.4节表

节表由多个节表项(IMAGE_SECTION_ HEADER)组成,每个节表项(40个字节)记录了 PE中与某个特定的节有关的信息,如节的属性、节 的大小、在文件和内存中的起始位置等。节表中节的数量由字段IMAGE_FILE_HEADER. …