Nginx配置简单反向代理
一、反向代理与正向代理
- 正向代理:客户端向服务器请求资源,资源就在服务器上,服务器直接获取到资源返回给服务器。
- 反向代理:客户端向服务器请求资源,可能客户端请求的资源并不在这台服务器上,服务器需要通过代理去其它服务器获取资源,再将获取到的资源返回给客户端,然而服务器向其它服务器获取资源这个过程客户端是不知道的,客户端任然感觉它请求的资源就是在它请求的那台服务器上*,服务器向其它服务器获取资源这个过程就是反向代理。
比如服务器ip是 192.168.0.10,客户端向服务器请求一个资源时,服务器需要到 192.168.0.49 这个服务器上获取资源再返回给客户端,客户端能够看到的就是它向192.168.0.10这个服务器请求资源,并不知道资源实际上是在192.168.0.49这个服务器上,下面我们就是用 nginx 配置反向代理来实现这个功能
二、nginx 反向代理配置
nginx的安装过程这里就不介绍了,可以看我的上一篇文章:Centos 安装Nginx
配置简单的反向代理其实很简单,首先在nginx配置文件目录下新建一个文件,文件名就叫 fxdl.conf
,打开nginx配置文件,找到 http那一节(http开头,用大括号括起来),在结尾大括号前面加上include conf/user-conf/fxdl.conf;
,意思就是包含我们新建的配置文件fxdl.comf
,主注意不要忘记末尾的分号。
编辑fxdl.comf
文件,添加以下内容:
upstream test{
server 192.168.0.49:9000; #反向代理获取资源的服务器
}
server {
listen 80; # 监听的端口号
server_name ty.test.com; #配置域名,当收到向 ty.test.com 发起的请求时进行反向代理
proxy_intercept_errors on;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Nginx-Proxy true;
# 404 页面反向代理
error_page 404 /404.html;
location = /404.html {
proxy_pass http://test; #192.168.0.49/404.html;
}
# 其它请求反向代理
location / {
proxy_pass http://test;
proxy_redirect off;
}
}
编辑完成后,保存文件,使用 nginx -t 检查配置文件是否正确,然后重新加载配置文件,命令为nginx -s reload
,注意需要在防火墙开放对应的端口,开发方法可参考: Linux防火墙Firewall-cmd 基础
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
评论已关闭