linxu准备环境安装Nginx - 2
这里和windows部署一样的,nginx.cof配置文件,html后面默认是vuepro,直接修改打包项目的名称更便捷。因为我电脑机器不行,所以我没有准备4台虚拟机,我tomcat只用了一台,并且是和mysql在一台虚拟机上,按道理是应该准备4台的,但是我这里没有道理,所以我只用了两台虚拟机。这里也会出现上面那个问题,问题就是找不到那个文件,因为所在目录不对,换来换去太麻烦,所以直接执行这行命令
一、系统拓扑图
说明:
- 用户请求达到Nginx
- 若请求资源为静态资源,则将请求转发至静态资源服务器
- 若请求资源为动态数据,则将请求转发给web服务器(在这里为tomcat处理),在转发的同时,会根据配置的负载均衡策略进行负载均衡处理。
二、 环境准备
-
接我上一篇博客:https://blog.csdn.net/2302_76703990/article/details/136765665 安装了mysql好tomcat,这一篇安装nginx和项目部署发布
-
四个虚拟机,一个mysql服务器,两个tomcat服务器,
一个Nginx服务器(Nginx服务同时作为反向代理用于负载均衡,和静态资源服务器)
一套采用前后端分离模式开发的系统(该例准备了webserver.war,对应的前端程序) -
因为我电脑机器不行,所以我没有准备4台虚拟机,我tomcat只用了一台,并且是和mysql在一台虚拟机上,按道理是应该准备4台的,但是我这里没有道理,所以我只用了两台虚拟机。
三、Nginx安装
1、离线安装
1.gcc安装
yum install gcc-c++
2.PCRE pcre-devel 安装
yum install -y pcre pcre-devel
3.zlib 安装
yum install -y zlib zlib-devel
4.OpenSSL 安装
yum install -y openssl openssl-devel
5.wget下载Nginx
wget -c https://nginx.org/download/nginx-1.18.0.tar.gz
6.解压
tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
7.配置安装
1.使用默认配置,命令在nginx目录中执行,执行完成会产生MakeFile等文件
./configure
2.编译并安装
make
make install
8.启动与停止
1.到命令所在目录
cd /usr/local/nginx/sbin/
2.启动
./nginx
3.停止,强制直接关停
./nginx -s stop
4.等待nginx进程处理完任务在停止
./nginx -s quit
这里出现了一个小插曲
解决办法:使用nginx -c的参数指定nginx.conf文件的位置
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
5.重新加载配置文件
./nginx -s reload
这里也会出现上面那个问题,问题就是找不到那个文件,因为所在目录不对,换来换去太麻烦,所以直接执行这行命令更便捷。
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
6.配置Nginx自动启动
vim /etc/rc.d/rc.local
/usr/local/nginx/sbin/nginx
7.修改/etc/rc.d/rc.local的权限
回到root目录,cd进入etc目录下进行次命令,否则会显示没有该目录或文件,因为位置不对。
chmod 755 rc.local
四 、导入数据库
打开mysql连接自己mysql的那台的虚拟机,导入自己的数据库就OK了。
五、部署
1、后台服务部署
1.在部署前请先将后台服务的数据库连接修改为已安装配置好的mysq服务器的ip地址。
2.后台服务的部署,非常简单,之间将war包上传至tomcat的webapps目录下即可。
打开mysql的虚拟机,点击Xftp工具上传war包到tomcat里面。
2.Nginx配置负载均衡及静态资源部署
1.修改前端程序
2.打包前台项目
选中项目,右键–>外部命令–>npm run build
打包好后,在你的项目会生成一个dist文件。
3.上传项目
打开Xftp把项目上传到usr/local/nginx/html目录下。这里和windows部署一样的,nginx.cof配置文件,html后面默认是vuepro,直接修改打包项目的名称更便捷。
4.修改nginx.conf配置
vim /usr/local/nginx/conf/nginx.conf
5.设置防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
5.重新加载配置文件
进入nginx的sbin目录运行命令,重新加载配置文件。
[root@localhost sbin]# pwd
/usr/local/nginx/sbin
[root@localhost sbin]# ls
nginx
[root@localhost sbin]# ./nginx -s reload
六、验证
1.进入tomcat的bin目录,打开tomcat
[root@localhost ~]# cd /opt
[root@localhost opt]# cd apache-tomcat-8.5.20/
[root@localhost apache-tomcat-8.5.20]# cd bin
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE: /opt/apache-tomcat-8.5.20
Using CATALINA_HOME: /opt/apache-tomcat-8.5.20
Using CATALINA_TMPDIR: /opt/apache-tomcat-8.5.20/temp
Using JRE_HOME: /usr/local/java/jdk1.8.0_151
Using CLASSPATH: /opt/apache-tomcat-8.5.20/bin/bootstrap.jar:/opt/apache-tomcat-8.5.20/bin/tomcat-juli.jar
Tomcat started.
2.登录mysql
- 打开mysql的虚拟机
- 运行:mysql -u root -p 登录mysql
- 开启mysql
3.打开浏览器,访问自己nginx的ip地址,不出意外的话就是自己的项目。
更多推荐
所有评论(0)