Nginx几种实例配置

nginx实例配置

反向代理实例一

Nginx几种实例配置

  • 安装tomcat:

wget -c
https://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.39/bin/apache-tomcat-9.0.39.tar.gz
tar -zxvf apache-tomcat-9.0.39.tar.gz

  • 写配置:

本机C:\Windows\System32\drivers\etc 下的hosts文件

Nginx几种实例配置

  • 修改:

/usr/local/nginx/conf nginx.conf contos IP: 192.168.31.218
域名转发配置:proxy_pass http://127.0.0.1:8080

Nginx几种实例配置

反向代理实例二

准备两个tomcat;一个端口为8080,另一个为8081 实现:根据路径不同转发到不同服务器
地址中带有edu的时候分发给8080服务器处理 地址中带有vod的时候分发给8081服务器处理

  • 添加配置:

/usr/local/nginx/conf nginx.conf
listen:监听的端口号
~/edu ~vod/ 正则表达式
Nginx几种实例配置

  • 正则表达式:

1、=:用于不含正则表达式的 uri前,要求请求字符串与uri严格匹配,如果匹配求功,就停止继续向下搜索并立即处理该请求。
2、:用于表示uri包含正则表达式,并且区分大小写I。3、*:用于表示 uri包含正则表达式,并且不区分大小写。v
4、^~:用于不含正则表达式的uri前,要求 Nginx服务器找到标识uri和请求字符串匹配度最高的
location后,立即使用此location 处理请求,而不再使用location央中的正则uri和请求字符串做匹配。。
注意:如果uri包含正则表达式,则必须要有~ or ~*标识。

负载均衡实例:

准备两个服务器tomcat;
添加配置:
/usr/local/nginx/conf nginx.conf

nginx分配服务器策略
  • 第一种轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down 掉,能自动剔除。

  • 第二种 weight

weight代表权重默认为1,权重越高被分配的客户端越多

Nginx几种实例配置

  • 第三种 ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session共享的问题。
第一次是这个服务器处理,那么再访问的时候还是该服务器处理

Nginx几种实例配置

  • 第四种fair(第三方)

按照后端服务器的响应时间来分配请求,响应时间短的优先分配。

Nginx几种实例配置

动静分离实例:

通过location 指定不同的后缀名实现不同的请求转发。 通过
expires参数设置,可以使浏览器缓存过期时间,减少与服务器之前的请求和流量。 具体
Expires定义:是给一个资源设定一个过期时间,也就是说无需去服务端验证,直接通过浏览器自身确认是否过期即可,所以不会产生额外的流量。此种方法非常适合不经常变动的资源。(如果经常更新的文件,不建议使用
Expires来缓存),我这里设置3d,表示在这3天之内访问这个URL,发送一个请求,比对服务器该文件最后更新时间没有变化,则不会从服务器抓取,返回状态码304,如果有修改,则直接从服务器重新下载,返回状态码200.

  • 配置:

autoindex on; 列出当前文件夹下的内容

高可用实例(未完结):

nginx出现宕机情况仍然能够完成客户端请求

准备工作:两个linux(nginx);
两台服务器安装nginx
两个服务器安装keepalived yum install keepalived -y