Do you know all three reverse proxy methods of nginx?

王林
Release: 2020-11-05 16:36:10
forward
18735 people have browsed it

Do you know all three reverse proxy methods of nginx?

# The three modes of nginx reverse proxy are:

1, IP-based proxy

2, Domain name-based proxy

3. Port-based proxy

(recommended related tutorials: nginx tutorial)

nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}

http {
	charset utf-8;
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

	# log_format  main  'remote_addr=$remote_addr:$remote_port, http_x_forwarded_for=$http_x_forwarded_for, proxy_add_x_forwarded_for=$proxy_add_x_forwarded_for ';
    access_log  logs/access_format.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on
	
	# 原始server
	server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
    }
	# 引入自定义的server配置
	include my-proxy-server.conf;
}
Copy after login

my-proxy-server.conf

########################################################################
# 基于端口代理
########################################################################
server {
	listen       81;
	server_name  localhost;
	location / {
		proxy_pass http://192.168.0.153:9091;
		proxy_redirect default;
	}
	location = /50x.html {
		root   html;
	}
}
server {
	listen       82;
	server_name  localhost;
	location / {
		proxy_pass http://git.itplh.com;
		proxy_redirect default;
	}
	location = /50x.html {
		root   html;
	}
}

########################################################################
# 基于域名代理 + gitlocal负载均衡
########################################################################
upstream gitlocal{
  server 192.168.0.153:9091;
  server 192.168.0.154:9091;
  server 192.168.0.155:9091;
}
upstream gitbj{
  server git.itplh.con;
}
server {
    listen       80;
    server_name  gitlocal.com;
    location / {
        proxy_pass http://gitlocal;
        proxy_redirect default;
    }
    location = /50x.html {
        root   html;
    }
}
server {
    listen       80;
    server_name  gitbj.com;
    location / {
        proxy_pass http://gitbj;
        proxy_redirect default;
    }
    location = /50x.html {
        root   html;
    }
}
Copy after login

The above is the detailed content of Do you know all three reverse proxy methods of nginx?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:csdn.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template