上一节已经用编译的方式搭建好了一个nginx,链接在下面
然后这次我们把上次搭建好的nginx作为反向代理的上游服务器,这里我把listen改成了
127.0.0.1:80表示这台nginx只能被本机访问
下图是安装的openresty作为代理服务器的配置文件
在这台代理服务器的conf/nginx.conf做了如下配置
upstream local {
server 127.0.0.1:80;
}
upstream是和server一个层级,这里面写的server 127.0.0.1:80;就是上图中我们说的上游服务器的地址和端口号
server {
listen 8000;
server_name 127.0.0.1;
location /{
proxy_pass http://local;
#这里的proxy_pass就是反向代理的意思,http://local就是upstream这个块的名称
}
}
然后接下来我们访问openresty这台代理服务器的地址
curl http://127.0.0.1:8000,就会出现下图画面,这个就是那台上游服务器127.0.0.1:80的展示页面
接下来我们在看下在openresty这台反向代理服务器的配置文件的两条指令
分别是proxy_set_header Host $host和proxy_set_header X-Real-IP $remote_addr;
现在由于我们配置了反向代理,所有我们这台反向代理服务器和客户端是一个tcp连接,而我们这台反向代理服务器和上游服务器又是一个tcp连接,
我们设置这个X-Real-Ip的意思就是把客户端的ip地址通过tcp连接传给上游服务器,Host也是这个意思,这样上游服务器就可以拿到真实的客户端ip地址,
而不是我们这台反向代理服务器的ip地址