前端使用nginx部署项目到服务器

news2024/12/23 13:43:47

目录

一、下载nginx

二、启动

三、验证

四、windows的操作指南

五、目录介绍

六、部署


一、下载nginx

下载地址:https://nginx.org/en/download.html

 

二、启动

两种方法:

1) 直接双击该目录下的"nginx.exe",即可启动nginx服务器;

2) 命令行(cmd)进入该文件夹,执行start nginx命令,也会直接启动nginx服务器。

注意:记得关闭防火墙

三、验证

打开浏览器,输入地址:http://localhost,访问页面,出现如下页面表示访问成功。

四、windows的操作指南

启动服务:start nginx

退出服务:nginx -s quit

强制关闭服务:nginx -s stop

重载服务:nginx -s reload  (重载服务配置文件,类似于重启,服务不会中止)

验证配置文件:nginx -t

使用配置文件:nginx -c "配置文件路径"

使用帮助:nginx -h

 

五、目录介绍

conf: 配置文件 配置虚拟主机文件就在此

html: nginx默认web根路径位置

logs: 日志文件

sbin: 二进制程序 启动/停止/重载服务命令就在此

六、部署

进入nginx文件夹下的conf文件,打开nginx.conf文件,修改端口以及配置子目录

Windows下的nginx可以通过文本或者vscode这种代码编辑器打开都可以

1、使用命令npm run build:prod进行项目打包。

2、打包后的文件名称是dist,将dist整个文件夹复制到nginx的文件夹下(与html文件夹同级)。

3、到 conf文件夹下配置配置nginx.conf文件里面修改相关配置

该文件里面的location / {} 里面的root就是解压nginx的目录,意思是说,默认打开的是root(也就是根目录)下的HTML里面的index.html/index.htm的网页。

location / {                  # 表示 以'/'开头的请求怎样处理
            root   html;      #指定root文件夹为 上面提到的html文件夹
            index  index.html index.htm;   #返回index.html
        }

 把这个修改为dist下的html

location / {
            root   dist;
            index  index.html index.htm;
        }

修改完成后一定要重启nginx,重启后才会生效

七、部署中的问题

 1、跨域

前端使用的反向代理vue.config.js

devServer: {
    port: port,
    open: true,
    overlay: {
      warnings: false,
      errors: true,
    },
    // 反向代理
    proxy: {
       "/api": {
         target: "http://192.168.4.95:8092/", //本地地址
         changeOrigin: true,
         pathRewrite: {
           "^/api": "/api",
         },
       },
    },
  },

nginx的跨域还是在nginx.conf中修改配置

server {
        listen       80; #监听端口
        server_name  localhost; #可以改成自己的域名或者ip
 
        #charset koi8-r;
 
        #access_log  logs/host.access.log  main;
 
        location / {
            root   dist; 
            index  index.html index.htm; 
        }

        location / {       #想要访问的baseurl
            proxy_pass http://192.168.4.95:8092;       #反向代理的服务器真正的ip
            add_header 'Access-Control-Allow-Origin' '*';      #允许来自所有的访问地址
            add_header 'Access-Control-Allow-Credentials' 'true';   #允许携带Cookie
            add_header 'Access-Control-Allow-Methods' *;  #允许所有的请求
            add_header 'Access-Control-Allow-Headers' 'Content-Type,*';#允许所有的header
        }
}

这里来说一下,貌似nginx跨域和后端不能一起设置跨域,所以你们要注意哦

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

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

相关文章

设置代理服务器

挂载代理 前提: 同一个局域网,有一个IP白名单可以访问网络(win10)。想实现其他机器(linux)共同访问。 先将机器(linux)设置固定IP,同一网关下。静态IP设置,保证能PING通。将win机器…

雪佛兰畅巡新能源电动汽车CANBUS总线适配及汽车远程控制车联网系统

随着智能交通的发展,中国作为全球最大的汽车市场,车联网的市场容量巨大,国内车联网摸索了很多年,前装也还是属于霸屏,提供信息娱乐等初期阶段。互联网对汽车行业确实推动了不少,汽车公司也与互联网融合做过…

淘宝天猫CTO若海:沉浸式的消费体验是下一步发力方向

​每年双 11 开卖的那一刻,千万用户同时在线下单,那个瞬间服务器的压力是平时流量的数百倍,淘宝系统是否能够稳定支撑,是每年所有人关注的热点话题。 时至今日,丝般顺滑已经逐渐成为稳态。从今年开始,双 11…

使用minio进行文件存储

title: 使用Minio存储文件对象 一. Docker拉取镜像(确保自己的服务器已经安装Docker) docker pull minio/minio二. 启动一个miniio容器 docker run --name minio -p 9090:9000 -p 9999:9999 -d \ --restartalways -e \ "MINIO_ROOT_USERminio&qu…

“码二代”从喜欢益智游戏到找最短路线,编程思维是如何培养的?

前言 1842年,“数字女王”的阿达洛芙莱斯(Ada Lovelace)编写了历史上首款电脑程序,至今已有200多年的历史。 (文末送读者福利) 在这个特别的日子里,我们要为大家介绍的是一个来自小小“码二代…

线性表详细讲述(带图)

文章目录线性表---顺序表和链表1.线性表2.顺序表2.1概念2.2 静态顺序表与动态顺序表2.3接口的实现2.3.1顺表的初始化2.3.2扩容2.3.3顺序表尾插2.3.4顺序表的尾删2.3.5顺序表的头插2.3.6顺序表的头删2.3.7顺序表的查找2.3.8顺序表的任意位置插入2.3.9顺序表的任意位置删除2.3.10…

[附源码]java毕业设计民宿网站管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【DL】linux服务器上安装Anaconda3

1.本地连接远程服务器 使用MobaXterm连接远程服务器 2.下载Anaconda3安装包 安装包下载地址 https://www.anaconda.com/ 因为我们要在linux服务器上安装,因此选择linux安装包 下载完成以后,将安装包拖进服务器 3.安装Anaconda3 打开终端,输入以下命令,目的是赋权限 c…

Vue路由

参考文献:Vue中的路由 一、路由理解: 一个路由就是一组映射关系(key,value),多个路由需要路由器(router)进行管理。其中key是路径,value是组件。作用:设定访…

【C++笔试强训】第二十六天

🎇C笔试强训 博客主页:一起去看日落吗分享博主的C刷题日常,大家一起学习博主的能力有限,出现错误希望大家不吝赐教分享给大家一句我很喜欢的话:夜色难免微凉,前方必有曙光 🌞。 💦&a…

springboot security 集成 cas 问题 No subject alternative names present

springboot security 集成 cas 问题 No subject alternative names present前言一、问题1.实际问题二、大海捞针1.星星之火2.通用方法啰嗦一句解决2.新建三个类配置文件修改前言 场景: 在一次springboot security 集成 cas开发中,代码报错:j…

轻松掌握 jQuery 基础

文章目录💖 前言💖 jQuery简介💖 jQuery安装及使用💖 jQuery的$💞 选择器💞 功能函数前缀💞 window.onload💞 创建DOM元素💖 投票快捷键💖 前言 随着JavaScri…

手机怎么把图片转换成Word?这个小妙招大家要学会

使用手机怎么把图片转换成Word文档呢?大家在使用图片文件来办公的时候,有的图片里面有成段成段的文字,不仅阅读起来很不方便,还很难修改内容,这时候我们可以将图片里的内容转换成Word文档,就可以解决这一问…

利用gdal把多张tif合成一张大图

目录gdalwarpgdalbuildvrt有时候从网站下载遥感影像时,因为选定区域的遥感影像太大,下载后往往是自动就给切片下载了。特别是当选定区域特别大时,最后形成的切片会有几十甚至上百小块,且这些小块都没有重叠的地方,虽然…

MySQL8.0优化 - 事务的ACID特性

文章目录学习资料事务事务的ACID特性原子性(atomicity)一致性(consistency)隔离性(isolation)持久性总结学习资料 【MySQL数据库教程天花板,mysql安装到mysql高级,强!硬…

以梦为马,不负韶华|电巢科技延安大学飞鹰计划实习班精彩回顾

时光流淌无声,昨天仿佛还初次见面,今天却又是一年的尾声。你是否结交到亲密的小伙伴?你是否感受到团队合作的魅力?你是否在延大这片沃土得到成长?假如你还没答案,那么看看其他人的回答。 在延安大学&#x…

node深度打印对象

Node 深度打印对象 在node中打印对象类型时,如果对象的层级过深,就会出现这样的问题 要想显示里面的值,就要通过JSON.stringify方法 这样打印出来不易于阅读且不美观,可以设置参数的方式来格式化JSON console.log(JSON.string…

【计算机组成原理】第三章单元测试

1.单选(2分) ‎执行算术右移指令的操作过程是 ‍A.操作数的符号位不变,各位顺次右移1位,符号位拷贝至最高数据位 B.操作数的符号位填0,各位顺次右移1位 C.操作数的符号位填1,各位顺次右移1位 D.进位标志移至符号位&#xff0…

九、Vue3基础之九

文章目录一、可视化1.1 接口API 也是后端项目1.2 前端项目开始1.2.1 echarts二、Vue3 Router2.1 Router的初步应用2.2 路由模式、Router原理2.3 命名路由、编程式导航2.4 历史记录2.5 路由传参2.6 嵌套路由2.7 命名视图2.8 重定向、别名2.9 导航守卫(前置守卫&#…

SpringBoot整合dubbo(三)

整合nacos作为注册中心 一、下载nacos:Release 2.2.0-BETA (Oct 28, 2022) alibaba/nacos GitHub 1.1、直接启动时报错,需要指定单例启动:startup.cmd -m standalone 启动后在http://localhost:8848/nacos/index.html访问,默认…