Nginx(小例子:反向代理、负载均衡、文件浏览和下载)

一、在验证功能之前需要的前提工作

1. 下载nginx以及依赖:yum -y install gcc zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre-devel

2. 安装nginx:进入nginx安装目录执行 ./configure 执行完后,在该目录下接着执行 make && make install

3. 上面操作执行完之后,在 /usr/local/目录下会生成nginx目录

4. nginx的配置文件是 /usr/local/nginx/conf/nginx.conf文件

5. nginx的命令:进入 /usr/local/nginx/sbin 目录,./nginx 启动;./nginx -v 查看版本;./nginx -s stop 关闭;./nginx -s reload 重启

二、反向代理(服务器)

1. 概念:正向代理和反向代理的区别

1)正向代理:假如我想访问某个网站,我是明确知道我想访问的地址的,就是某个网站地址,然后我需要在浏览器配置上代理的服务器地址,然后访问时我输入的是某个网站地址

2)反向代理:我不知道我要访问的地址,我访问的是一个代理地址,由代理来把请求转发给真正的服务器地址。比如现在有一个反向代理的地址 www.123.com 访问它就把请求转发到了要访问的某个服务器

2. 反向代理例子,我想达到的效果:输入nginx服务器的地址然后进入tomcat界面

1)部署tomcat1,验证(外网:152.136.23.174,内网:172.16.0.52)

2)nginx部署的机器(外网:152.136.11.188,内网:172.16.0.62)

3)修改nginx的配置文件 vim /usr/local/nginx/conf/nginx.conf,在location中加入 proxy_pass http://172.16.0.52:8080;

4)查看效果(不做反向代理的话,输入 http://152.136.11.188 进入的是nginx的欢迎界面)

 

5)可能存在的问题,我这里防火墙是关闭的:查看端口是否开放,firewall-cmd --list-all。开放端口:firewall-cmd --add-port=8080/tcp --permanent。重启防火墙:firewall-cmd --reload

6)nginx可能存在的问题:403 forbiden。看一下nginx的配置文件,有可能配置文件默认的就返回的 403,需要手动改一下

三、反向代理(跨域)

1. 我想达到的效果:根据不同的请求地址跳到不同的tomcat中

2. 部署另外一台tomcat2服务器,服务器信息:外网:152.136.23.174,内网:172.16.0.52 (和tomcat1是一台机器),端口改为8081

3. 创建一个html:<h1>8080!!<\h1>,在tomcat1 webapps的目录下新建edu目录,将html放入该目录

4. 创建一个html:<h1>8081!!<\h1>,在tomcat2 webapps的目录下新建vod目录,讲html放入该目录

5. 修改nginx 配置文件

6. 重启nginx之后,查看效果

7. nginx的配置文件中location后面的波浪线是匹配正则表达式的意思, 严格区分大小写。 location后面如果跟 ~* 也是匹配正则表达式的意思, 不区分大小写

四、负载均衡

1. 想达到的效果:输入http://152.136.11.188/edu/a.html时, 让请求平均的分配到8080 和 8081两台服务器上

2. 在反向代理中已经在tomcat1中新建了edu目录,同样在tomcat2 webapps的目录下也新建edu目录,将8081的html放入该目录下

3. 修改nginx的配置如下:

4. 重启nginx,通过 http://152.136.11.188:9005/edu/a.html 查看效果

5. 分配的权重(大致写一下):1、轮询(默认);2、weight权重;3、ip_hash;4、fair

五、动静分离(搭建一个可以查看和下载文档的小型服务器)

1. 实现的效果:txt|doc|pdf|zip|docx 文档格式的文本可下载,其他格式的文本可查看

2. 在data/downloads目录下放入各种文件

 

3. 修改nginx配置 :

4. 重启nginx后,查看效果

 1)首先查看jpg不能下载,但是可以查看

2)docx文件可以下载,点击google.docx之后浏览器下方开始下载

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值