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. 概念:正向代理和反向代理的区别

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

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

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

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

Nginx(小例子:反向代理、负载均衡、文件浏览和下载)_第1张图片

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;

Nginx(小例子:反向代理、负载均衡、文件浏览和下载)_第2张图片

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

 Nginx(小例子:反向代理、负载均衡、文件浏览和下载)_第3张图片

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:

8080!!<\h1>,在tomcat1 webapps的目录下新建edu目录,将html放入该目录

4. 创建一个html:

8081!!<\h1>,在tomcat2 webapps的目录下新建vod目录,讲html放入该目录

5. 修改nginx 配置文件

Nginx(小例子:反向代理、负载均衡、文件浏览和下载)_第4张图片

6. 查看效果

Nginx(小例子:反向代理、负载均衡、文件浏览和下载)_第5张图片

Nginx(小例子:反向代理、负载均衡、文件浏览和下载)_第6张图片

 

你可能感兴趣的:(Nginx,nginx)