编程技术分享平台

网站首页 > 技术教程 正文

Nginx反向代理proxy_pass指令(nginx反向代理http)

xnh888 2024-10-03 04:37:55 技术教程 39 ℃ 0 评论

Nginx反向代理模块的指令是由 ngx_http_proxy_module模块进行解 析,该模块在安装Nginx的时候已经自己加装到Nginx中了,接下来我们 把反向代理中的常用指令一一介绍下

相关模块的配置指令在documentation当中

进入documentation之后,点击ngx_http_proxy_module可以查看对应的映射文件内容

这里面有三个指令:

 proxy_pass
 proxy_set_header
 proxy_redirect

反向代理涉及到客户端,代理服务器,服务器,反向代理的具体执行流程是用户从客户端发送请求之后到客户端之后,用户就可以通过反向代理的方法分发到服务器上

proxy_pass ----反向代理,分发服务器的最好用法,接受客户端发送过来的数据请求,在上图的代理服务器到服务器的过程中,进行分发

该指令用来设置被代理服务器地址,可以是主机名称、IP地址加端口号 形式。

它所存储的位置,放在location里面,编写的位置

监听8080端口,利用prox_pass反向代理到http://192.168.200.146里

利用proxy_pass配置完映射路径之后,检验语法,重载配置,最终访问的8080端口的端口内容,来自8084服务器的内容

现在再访访问8080端口,

修改的是133,实际访问的是146

proxy_pass http://www.baidu.com;

proxy_pass http://192.168.200.146;

大家在编写proxy_pass的时候,后面的值要不要加"/"?

之前的配置文件没有加/

这里多加一个/server文件内容,下面的proxy_pass里面没有加/

现在访问server结果出现了404的错误


检验错误日志信息,必须到146的服务器下查看,tail -f ../logs/error.log

没有加/,最终会变成 http://192.xxx.xxx.xxx/server/index.html

之前没加/,现在在proxy_pass的url后面添加/

现在就可以通过server访问页面了

server {
 listen 80;
 server_name localhost;
 location /{
 #proxy_pass http://192.168.200.146;
 proxy_pass http://192.168.200.146/;
 }
 }
当客户端访问 http://localhost/index.html,效果是一样的
server{
 listen 80;
 server_name localhost;
 location /server{
 #proxy_pass http://192.168.200.146;
 proxy_pass http://192.168.200.146/;
 }
 }
当客户端访问 http://localhost/server/index.html
这个时候,第一个proxy_pass就变成了
http://localhost/server/index.html
第二个proxy_pass就变成了http://localhost/index.html效果
就不一样了。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表