nginx常见配置

来源:互联网 发布:apache phpinfo 编辑:程序博客网 时间:2024/04/29 10:41

常见配置

约定

nginx所在服务器:nginx
后端业务所在服务器:back1、back2….

基本反向代理

场景需求:访问http/nginx/back1/ 时,实际访问https/back1:61089/
Notice:做了协议+ IP地址 + 访问端口的转换。

 server {    listen       80;    server_name  nginx;    location /back1/ {        proxy_pass https://back1:61089/;    } }

根据不同域名分发服务

场景需求:
1. back1 和back2实属同一服务器,占用了不同的端口号,分别为81和82。
2. 用户通过back1和back2的域名访问,端口号都用80。
Key:server_name不同。
1. nginx匹配时,会同时匹配路径+端口,匹配最合适者;
2. back1 和back2在访问方对应的IP,都是nginx服务的IP。

 server {    listen       80;    server_name  back1;    location / {        proxy_pass http://back1:81/;    } } server {    listen       80;    server_name  back2;    location / {        proxy_pass http://back2:82/;    } }

根据不同端口分发服务

场景需求:
1. back1 和back2实属同一服务器,占用了不同的端口号,分别为81和82;
2. 用户通过http://nginx:181访问back1,通过http://nginx:182访问back2;
Key:listen的端口号不同。

 server {    listen       181;    server_name  nginx;    location / {        proxy_pass http://back1:81/;    } } server {    listen       182;    server_name  nginx;    location / {        proxy_pass http://back2:82/;    } }

根据不同路径分发服务

场景需求:
1. back1 和back2实属同一服务器,占用了不同的端口号,分别为81和82;
2. 用户通过http://nginx/back1访问back1,通过http://nginx/back2访问back2;
Key:listen的端口号不同。

 server {    listen       80;    server_name  nginx;    location /back1/ {        proxy_pass http://back1:81/;    }    location /back2/ {        proxy_pass http://back2:82/;    } }

修改重定向地址

场景需求:
1. back1特定操作下,会跳转至back2,跳转手法是Response中设置Code=302,Location=back2;
2. 用户只能看到nginx地址,something like内外网隔离;
Key:配置proxy_redirect,对back1的Response Location字段进行修改

 server {    listen       80;    server_name  nginx;    location /back1/ {        proxy_pass http://back1:81/;.        proxy_redirect http://back2/ http://nginx/back2/;    }    location /back2/ {        proxy_pass http://back2:82/;    } }

待续….


修改Cookie Domain

场景需求:
1. 例如单点登录系统,back1跳转至back2进行登录,然后

指定访问日志和错误日志

0 0
原创粉丝点击