导航:首页 > 配服务器 > 部署前端到云服务器nginx

部署前端到云服务器nginx

发布时间:2023-03-27 20:15:42

⑴ nginx怎么部署前端项目

1、安装兄陪护卫神·nginx大师
2、开设站羡察蠢点,绑定和解析域名
3、上传前端页没码面到网站

⑵ react+springBoot 项目部署到腾讯云

本文主要介绍如何搭建个人网站,并将项目部署到腾讯云。
前端:React,
后端:SpringBoot,
云服务:centos7

建议使用create-react-app创建react项目包,简单快捷。

进入项目路径,开始运行

直接使用项目自身的build指令进行打包,完成后会在项目根目录多出一个build文件夹

build文件中包含项目打包后的js、css、html...等资源。下一步的部署,就是将这一build文件上传到云服务器,并通过nginx指向build。

将上一过程中的build文件上传到云服务器,推荐使用ForkLift, 使用教程 。

进入云服务器,找到nginx文件,修改root指向build路径, nginx配置教程 。

上述操作完成后,打开域名后,页面即为react项目的首页。

建议使用idea进行springboot项目的开发(专业的事情交给专业的工具,简单些)。

idea搭建一个springboot项目

mysql: 官方地址
mysql管理工具Navicat: 官网地址
如果本地不想安装mysql,也可以直接在服务器上进行安装,然后在本地访问, 服务器安装mysql并实现远程访问 。

将本地springboot项目打包后,上传到云服务器并启动, Spring boot项目部署到腾讯云服务器 。
关于项目的启动并保持一致运行:可以在控制台输入

回车,nohup命令可以让你的shell命令忽略SIGHUP信号,即可以使之脱离终端运行;“&”可以让你的命令在后台运行。

至此,前后端项目都已安装在云服务器上。

原文地址: react+springBoot 项目部署到腾讯云

⑶ 使用Tomcat和Nginx部署前端项目

第一种方式,将我们的前端项目放置在webapps目录下

进入tomcat安装路径下的conf目录,在server.xml文件中<Host>标签内配置虚拟路径

简单的解释一下参数
path 对应用户请求过来的url路径, /static 匹配所有以 /static 开头的请求
docBase 表示实际匹配到的路径,这里可以使用绝对路径,也可以使用相对路径
reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化。(对于静态资源来说,个人觉得这个配置用处不大)
总结起来就是,对于ip:8080/static的资源请求,会通过虚拟路径匹配到我们实际的资源路径music_client/static。
配置好后重启,我们可以发现已经能够看到我们的前端项目了

对于ROOT目录下的资源,tomcat可以直接在根目录下进行访问。通过这种方式,我们可以让项目的路径去适配tomcat访问的路径。
但是这种方式不是特别推荐,当有多个项目在同一个tomcat服务器上的时候,会不方便管理。

Nginx是当下热门的服务器,使用起来只需要进行简单的配置即可。对于Nginx的安装大家可以自行网络解决。
我们先进入到usr/local/nginx(具体以实际nginx安装目录为准)下的conf目录,vim编辑nginx.xml。主要进行下面的配置

简单的解释一下
listen 表示nginx监听的端口号,也就是你希望暴露哪个端口给用户进行访问
server_name 表示nginx接受请求的域名,一般默认localhost就行
location 模块用于响应请求,这里的 / 表示匹配8082端口的所有请求
root 表示静态资源/项目的路径
index 表示默认的访问资源
配置完成后,进入 sbin 目录下,通过 ./nginx -t 检查配置文件的格式是否正确
如正确 ./nginx 进行启动或者 ./nginx -s reload 进行重启
启动完,我们就可以直接ip:8082直接访问我们的前端项目啦

开启nginx的反向代理也比较简单,只需要加上proxy_pass 配置即可

出现这个问题的原因是: 在history模式下,只是动态的通过js操作window.history来改变浏览器地址栏里的路径,并没有发起http请求,但是当我们直接在浏览器输入这个地址的时候,就会对服务器发起http请求,但是这个目标在服务器上又不存在,所以会返回404。
我们可以通过把所有请求都转发到首页上来解决这个问题。只需要在 Nignx 中的配置文件加入如下配置:

事实上,上面的解决方式也是Vue-Router官方推荐的解决方式( https://router.vuejs.org/zh/guide/essentials/history-mode.html#nginx )。
那上面的 try_files 为什么能帮助我们解决这个问题呢?我们可以看一下这个属性的作用

try_files :按选项所指定的顺序去检查用户请求的文件是否存在,如果本地存在的话则返回该请求;不存在的话将该请求转发到指定的其它路径。也就是说,比如我们当前的前端项目部署在 /usr/myproj 目录下,现在我们在浏览器发起 ip:port/testApi 请求,那么此时 uri 为testApi,nginx会先去 $root/testApi (即/usr/local/myproj/testApi)找是否存在该静态资源,若不存在,则继续寻找 $root/testApi/index (即/usr/local/myproj/testApi/index)文件是否存在,如果还是不存在,则会把请求转发到首页。

而我们的项目本事就是由Vue-Cli创建的 单页面应用 ,当index页面接收到请求的时候,对应的history模式路由就可以发挥作用了,根据浏览器的路由跳转到对应的页面,这也就保证了我们的路由请求都能够转发给index页面来进行处理。

这种问题一般是出现在服务器一开始安装Nginx的时候,没有安装SSL模块。在不重装Nignx的情况下,可以安装如下方式进行操作:

执行如下命令

这一步只是以防万一,可以省略

也可以直接执行 ./usr/local/nginx/sbin/nginx -t 看还会不会报错就行

nginx报错: [emerg] https protocol requires SSL support in /usr/local/nginx/conf/nginx.conf:50

⑷ web前端项目部署到服务器:

执行成功后会生成dist文件

4.1 进入到nginx配置目录:/usr/local/nginx/conf,对 nginx.conf 文件进行配置

使用include可以配置多个.conf文件,如一个项目一个配置文件。在同目录下创建demo文件夹,并创建demo.conf配置文件

下面使用是以ip地址的方式创建的的配置文件

访问地址:

其中dist名称时可以修改,保持与/usr/local/nginx/html下cp名称一致,否则会访问不到;并且/usr/local/nginx/html目录可存在同一ip下多个web项目。

域名与ip绑定

配置域名demo.conf
eg: 域名 - demo.cn

4.2阿里云配置域名前缀
阿里云->域名->域名列表—>域名 管理-> 域名解析->解析设置

如图:记录值 填写当前服务ip

学习过程中所记录,有问题或者有好的方式欢迎指点。不胜感激 🤗 🤗 🤗

⑸ nginx部署多个前端项目

这里就不介绍同一端口和同一nginx.conf,有需要的童鞋自行网络。
这里介绍不同项目的不同配置。
服务器中已经部署了其他项目,这里做一个简单的页面做测试:

1、新建目录:
/root/nginx/8571/
/root/nginx/8571/html/
/root/nginx/8571/log/

2、将文件:/usr/sbin/nginx 拷贝至 /root/nginx/8571/
3、新建index.html:/root/nginx/8571/html/index.html

4、新建配置文件:/root/nginx/8571/nginx.conf

5、启动 nginx
./nginx -c /root/nginx/8571/nginx.conf

注意:
若 nginx.conf 配置 location 后,重启 nginx 再访问,如果访问提示:Nginx 403 Forbidden,则需要在 nginx.conf 头部加入一行:

user root;

查看nginx端口使用情况:netstat -apn
启动成功后输入ip和端口8571访问:

⑹ nginx部署前端纯页面

1.进入nginx配置文件vim .../nginx-1.9.12/conf/nginx.conf。

如上图所示:第一个红框中的内容就是应用服务器的地址陪粗;第二个红框中的内容就是前端包的位置。

此时,配置文件已经准备完毕。这个包和端口可以存在多个。

2.进入.../nginx-1.9.12/sbin 找到nginx的启动程序。

nginx -c ../nginx-1.9.12/conf/nginx.conf    启动芦返镇nginx程序,并指定配置文件。

3.如果要替换包,则直接替换就行,nginx为热加载自动更新的。但是以防有缓存之类的存在,可以使用nginx -s reload命令进行重载一次。

追加 一 :

如果前端包的构造如下图

则location配置依然如下图

但是访问地址则需要指定到具体的html文件上。。

绑定: http://127.0.0.1:48110/binding.html

成功: http://127.0.0.1:48110/success.html

失败: http://127.0.0.1:48110/error.html

追加 二:

同一个端口部署多个页面:

一个server下,多个 location。

location的作用就是是否有后缀,并且这个后缀会去拼接root后的地址。

比如第二个location /sis/。

则在访问127.0.0.1:8080/sis时,会去自动寻找/apps/svr/nginx-1.9.12/pagefile/0921/sis这个包。  世明 (Ps:location后的地址一定要用 / 关闭,比如 location /sis/,不然访问127.0.0.1:8080/sis时,会报错,只有用127.0.0.1:8080/sis/才行。)

这样就部署好了一个 端口支持多个页面。

阅读全文

与部署前端到云服务器nginx相关的资料

热点内容
建德盛德电影院今日电影 浏览:89
谁有在线观看的网站 浏览:643
午夜不卡电影 浏览:760
python字符串unicode编码 浏览:6
电影加密的软件 浏览:728
鬼王镜奴的古装电影 浏览:34
python3module 浏览:497
韩国李彩谭作品 浏览:931
python爬虫gif 浏览:861
重生收母 浏览:539
都市之开局被10个老婆宠成 浏览:233
程序员两年应该多少工资 浏览:964
极盗者2在线免费观看 浏览:854
男男电影免费观看推荐 浏览:361
福建u盘加密联系方式 浏览:516
釜山行3免费完整观看国语 浏览:78
官神夏想几个老婆 浏览:249
看片网站知乎 浏览:60
张鸣pdf 浏览:172
王者区苹果怎么转安卓 浏览:77