nginx反向代理+路径重写 配置


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    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"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        # 访问方式:http://127.0.0.1/1/ng1/ --> http://127.0.0.1:82 这里和方式二主要区别在于rewrite和proxy_pass的位置。
        location ~ /ng1/ {
            proxy_pass http://127.0.0.1:81;
            rewrite "^/(.*)/ng1\/(.*)$" /$2 break;
        }
        # 访问方式:http://127.0.0.1/1/ng2/ --> http://127.0.0.1:82
        location ~ /ng2/ {
            rewrite "^/(.*)/ng2/(.*)$" /$2 break;
            proxy_pass http://127.0.0.1:82;
            
        }
        # 访问方式:http://127.0.0.1/ng3/ --> http://127.0.0.1:83
        location /ng3/ {
            rewrite ^/ng3/(.*)$ /$1 break;
            proxy_pass http://127.0.0.1:83;
        }
        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

你可能感兴趣的:(nginx反向代理+路径重写 配置)