nginx配置实例
一、反向代理
实例1
1.效果示例:打开浏览器,在浏览器地址栏输入地址www.123.con,跳转到linux系统tomcat主页
2.准备工作:
对外开放访问的端口
firewall-cmd --add-port=8080/tcp --permanent
systemctl stop firewalld
systemctl start firewalld
3.访问过程解析
4.windows系统中修改host文件,进行域名和ip对应关系的配置
5.nginx.conf文件配置:
实例2
1.效果示例: 使用 nginx 反向代理,根据访问的路径跳转到不同端口的服务中 nginx 监听端口为 9001
访问 http://192.168.17.129:9001/edu/ 直接跳转到 127.0.0.1:8080
访问 http:// 192.168.17.129:9001/vod/ 直接跳转到 127.0.0.1:8081
2.准备工作:
启动两个tomcat服务器,一个8080端口,一个8081端口
3.修改nginx.conf文件配置:
location指令说明:
二、负载均衡
1.效果示例:
浏览器地址栏输入地址 http://192.168.17.129/edu/a.html,负载均衡效果,平均 8080 和 8081 端口中
2.nginx.conf文件配置:
nginx负载均衡的几种分配方式(策略):
1.轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。
2.weight
weight 代表权,重默认为 1,权重越高被分配的客户端越多
指定轮询几率,weight 和访问比率成正比,用于后端服务器性能不均的情况。 例如:
3.ip_hash
每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。 例如:
4.fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
三、动静分离
通过 location 指定不同的后缀名实现不同的请求转发。通过 expires 参数设置,可以使浏 览器缓存过期时间,减少与服务器之前的请求和流量。具体 Expires 定义:是给一个资源 设定一个过期时间,也就是说无需去服务端验证,直接通过浏览器自身确认是否过期即可, 所以不会产生额外的流量。此种方法非常适合不经常变动的资源。(如果经常更新的文件, 不建议使用 Expires 来缓存),我这里设置 3d,表示在这 3 天之内访问这个 URL,发送一 个请求,比对服务器该文件最后更新时间没有变化,则不会从服务器抓取,返回状态码 304, 如果有修改,则直接从服务器重新下载,返回状态码 200。
1.nginx.conf文件配置:
autoindex on 列出文件夹内文件内容