1.nginx适用场景
代理服务器–使用比较多的为nginx代理服务器
现在由哪些企业正在使用nginx?
- 京东 2.淘宝 3.腾讯 4. 新浪 5.网易 等
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 -s stop 关闭nginx
./nginx -s reload 重新加载配置文件—修改完配置文件后使用该命令
(8) 访问nginx服务器
相关 关闭防火墙的命令:
1. 查看防火墙的状态: systemctl status firewalld
2. 设置防火墙允许放行哪些端口号
firewall-cmd --add-port=8080/tcp --zone=public --permanent
3. 重启防火墙
systemctl restart firewalld
4. 查看哪些端口号被放行
firewall-cmd --list-port
5. 防火墙移除端口号
firewall-cmd --remove-port=8080/tcp --zone=public --permanent
6. 关闭防火墙----慎重【关闭】 开启还会启动
systemctl stop firewalld
关闭防火墙后:
3.nginx配置文件
通过配置nginx.conf文件
可以自己写进入nginx访问的页面和修改访问的端口号
4.核心功能
4.1.反向代理:
4.2.负载均衡:
4.3.动静分离:
4.4高可用
4.1反向代理
如何使用nginx完成反向代理
准备一个真实项目和Tomcat服务器 并把项目部署到Tomcat.—springboot项目
把jar包放入虚拟机linux系统下/project目录下
启动真实项目:
java -jar xxxx.jar
修改nginx配置文件
重新加载nginx
./nginx -s reload
4.2 nginx负载均衡
修改nginx配置文件
测试:
默认负载均衡的策略为轮询策略。
1)、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
2)、ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
3)、fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
4)、url_hash(第三方)
4.3 nginx—动静分离
就是把服务器的静态资源放在nginx中的统一管理。
这样做可以提高运行效率。
在nginx.conf配置文件下配置静态资源的访问路径
4.4 高可用
准备条件:
192.168.223.155 [master]
192.168.223.156 [backup]
准备两个虚拟机 策略权限分别为master 和 backup
(1)需要再每个nginx所在的主机上安装keepalived
yum install -y keepalived 安装keepalived
rpm -q -a keepalived 检查是否安装keepalived
默认安装在/etc/keepalived目录
两台启动nginx
启动keepalived
systemctl start keepalived
主的nginx关闭:
nginx -s stop
systemctl stop keepalived
当主的master nginx关闭
备用backup nginx启动