欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Nginx 配置反向代理

程序员文章站 2024-01-19 18:49:28
...
1,首先新建一个配置文件,/etc/nginx/sites-enabled/reverse-proxy.conf

内容为如下所示,每行都需要分号结尾

upstream monitor_server {	#这里是为了使用负载均衡,使得多个ip可以提供同一个服务,weight为权值,
    server 10.10.12.203:8080 weight=2;
    server 10.10.12.202:8080 weight=4;
}

server 
{
    listen 8081;
    server_name www.xxx123.com;	# 反向域名代理,不同的域名是指向同一入口ip,经过nginx,又转向不同的内部ip提供网络服务,"www"不省略
    location / {
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://monitor_server;
    }
}

server 
{
    listen 8081;
    server_name localhost;
    location / {
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://10.10.12.203:8080;
    }
}

2,将上述配置文件include到nginx.conf

编辑 /etc/nginx/nginx.conf,在http{}中添加一句话,比如在

include /etc/nginx/mime.types;
default_type application/octet-stream;

两行下面添加一句:

include /etc/nginx/sites-enabled/reverse-proxy.conf;

这样的话,就可以把反向代理配置文件引用到,接着重启即可: service nginx restart

3,测试

我的测试客户端是windows,ip是10.10.12.73;而nginx服务器是在Ubuntu中,ip是10.10.2.176.

打开c:\windows\System32\drivers\etc\hosts文件,在最后添加如下:

10.10.2.176 www.xxx123.com

其中10.10.2.176为nginx服务器的ip,结果可以在浏览器输入www.xxx123.com, 可以看到果然转发了。

以上就介绍了Nginx 配置反向代理,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。