1.什么是nginx
代理服务器--使用比较多的为nginx代理服务器。
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。开源软件,服务器软件.能够支持高达 50,000 个并发连接数的响应
2.如何使用nginx
(1)安装nginx软件所需的依赖插件
yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
(2)把我们的nginx安装包上传到 linux中并解压
(3)创建一个目录作为nginx的安装目录
mkdir /usr/nginx
(4)进入nginx的解压目录
(5)设置nginx的安装路径为上面/usr/nginx
(6) 编译--安装
make
make install ---安装
conf: 配置目录
html: 放置静态资源的。
logs: 日志
sbin: 启动和关闭nginx的脚本
(7)启动nginx 进入到你的nginx目录
./nginx 开启nginx
./nginx -s stop 关闭nginx
./nginx -s reload 重新加载配置文件---修改完配置文件后使用该命令
(8) 访问nginx服务器
原因:防火墙未关闭或者你的端口号未选择放行
设置防火墙允许放行哪些端口号
firewall-cmd --add-port=你的端口号/tcp --zone=public --permanent
放行端口号后需要重启防火墙:
systemctl restart firewalld
查看哪些端口号被放行
firewall-cmd --list-port
关闭防火墙----慎重【关闭】 开启还会启动
systemctl stop firewalld
关闭防火墙或者放行端口号之后就可以进行访问了
3.nginx的配置文件
进入/usr/nginx/conf,打开该目录下的nginx.conf文件:
cd /usr/nginx/conf -------进入nginx.conf文件所在目录
使用vi打开该文件进行配置或使用Xftp调用本地软件打开:
vi nginx.conf --------使用vi打开nginx的配置文件
3.1默认的配置信息
(1)找到nginx.conf文件
(2)查看nginx.conf文件里的配置信息
(3) 访问nginx
默认的index.html文件里的内容
(4)修改 index.html文件的内容
进入到html目录下 使用vi命令修改 index.html内容
修改后的内容
3.2自己创建配置文件信息
(1)创建配置文件信息
(2)创建my目录
(4)创建my.html文件
(5)传输到linux下
(6)访问
4.nginx三大核心
反向代理:
负载均衡:
动静分离:
4.1反向代理
正向代理: 该服务器代理的为客户端,对于后面真实的服务器来说,不知道访问者的地址。比如:翻墙软件。
反向代理: 该服务器代理的为服务器端,对于客户来说不知道访问的真实服务器。
如何使用nginx完成反向代理
准备一个真实项目和Tomcat服务器 并把项目部署到Tomcat.---springboot项目
(1)打包项目
(2)上传到linux系统下
(3) 启动真实项目
java -jar xxxx.jar
(4)修改nginx配置文件
(5)重新加载nginx
./nginx -s reload
(6)访问项目
ps:如果所有都配置完成无法进入指定页面,则需放行项目端口,我这里项目端口号是8081,然后重新加载防火墙;或者直接关闭防火墙,但关闭请慎重
4.2负载均衡
用于搭建项目集群,在实际开发中我们会有多个服务器,这时我们要把项目部署在每一个服务器上,负载均衡减轻单台服务器压力,保证每台服务器的高效率及高可用
(1)开启两台服务器
(2)修改nginx配置文件
(3)重新加载配置文件
cd /usr/nginx/sbin
./nginx -s reload
(4)测试
根据上面的配置,我们创建了一个集群,名称为ban151,集群中一共由两个服务,相当于两台服务器(因为只有一台电脑,所以只能用端口号的不同来区别这两个服务器,真正使用时这些服务器的ip都不相同)。然后让我们的nginx直接代理这个集群。用户访问nginx的代理ip:81,nginx就会以轮询的方式分配服务器。
nginx负载均衡的策略:
默认负载均衡的策略为轮询策略。
1)、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
3)、ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
4)、fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
5)、url_hash(第三方)
4.3动静分离
动静分离就是让静态资源由我们的nginx来管理,这样当我们修改静态资源时,只是修改了代理服务器上的内容,而不是每一个真实服务器的内容都要修改,这样大大节省了效率。
(1)为什么使用动静分离
(2)如何使用nginx搭建动静分离
将springboot项目中的static文件提取出来,将不带static文件的项目打包成jar,放到linux中(一般都放在 /project中),然后将static文件放到nginx的根目录下(/usr/nginx/)。然后修改我们的配置文件:
配置了一个server:
(3)把项目中的静态资源放入nginx安装路径下,删除项目中的静态资源
运行项目(java -jar 工程),如果我们直接访问真实服务器地址,静态资源无法加载,但是通过nginx代理服务器访问项目,静态资源就可以加载。这就实现了我们的动静分离的原则。
5.nginx的高可用
我们的Nginx虽然承受并发的能力非常强,但不排除由意外情况导致我们的nginx会宕机。为了尽可能使我们的项目正常运行,这时我们可以启用备胎计划,也就是再搞一台服务器当做代理服务器,这两台代理服务器之间有一个主从关系。平常我们的备胎代理服务器不会使用,当标记为MASTER的主代理服务器宕机了,我们的被标记为BACKUP的从代理服务器就可以成功上位,充当MASTER的位置实现代理功能,当MASTER的代理服务器正常运行以后,BACKYUP就退居二线,不再使用。
(1)准备条件
1.192.168.19.151---- master主节点
2.192.168.18.152---->backup从节点
(2)检查
两台linux是否可以正常启动nginx
两台linux都安装keepalived
yum -y install keepalived 安装keepalived
rpm -q -a keepalived 查看本地是否安装keepalived
(3)默认keepalived的配置文件在 /etc/keepalived下
(4)把启动脚本放入指定目录 /usr/local/src/ 文件名为nginx_check.sh
注意:使用killall命令需要先下载
yum install psmisc
(5)启动nginx和keepalived
./nginx
systemctl start keepalived
(6)访问
测试从代理服务器 有没有起到作用
主nginx的nginx关闭:
(7)测试从代理服务器 有没有起到作用
主nginx的nginx关闭:
nginx -s stop
systemctl stop keepalived
注意
当我们MASTER机的nginx stop运行,脚本启动,同时关闭了我们的keepalived。
这时负责代理功能的服务器就是标记为BACKUP的我们的从服务器。当主代理服务器正常运行时,负责代理功能的服务器就是标记为MASTER的代理服务器,BACKUP服务器不负责代理。文章来源:https://www.toymoban.com/news/detail-455005.html
注意:你在keepalived.conf里面配置的是你的nginx代理服务器的ip,每个代理服务器的nginx.conf里面配置的都是真实项目所在服务器的ip集群。两台代理服务器的nginx.conf配置文件的内容应当相同,毕竟代理的都是相同的服务器。文章来源地址https://www.toymoban.com/news/detail-455005.html
到了这里,关于Linux系统--nginx的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!