nginx反向代理怎么传递参数

nginx 服务器的反向代理服务是其最常用的重要功能,由反向代理服务也可以衍生出很多与此相关的 nginx 服务器重要功能,比如后面会介绍的负载均衡

nginx反向代理怎么传递参数

反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。  (推荐学习:nginx教程

nginx反向代理配置:

 location ~ /someuri {         access_log /var/log/nginx/uploads.log;         proxy_pass_header Server;         proxy_set_header Host $http_host;         proxy_redirect off;         proxy_set_header X-Real-IP $remote_addr;         proxy_set_header X-Scheme $scheme;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;         proxy_read_timeout 300;         proxy_pass $scheme://proxy_location$uri;         recursive_error_pages on;     }

如上面代码所示,可以进行反向代理,但这样会有问题:

如果在url里面加了请求参数,用$scheme://proxy_location$uri转发后是不带这请求参数的,所以不能使用$uri这个变量,如需要继续携带请求参数,则需要使用$request_uri,即proxy_pass $scheme://proxy_location$request_uri;

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享