doc: update docs/nginx.md (#836)
This commit is contained in:
parent
a69be1efba
commit
3749de233c
120
docs/nginx.md
120
docs/nginx.md
@ -892,6 +892,126 @@ location = /robots.txt {
|
||||
}
|
||||
```
|
||||
|
||||
### 获取请求ip
|
||||
<!--rehype:wrap-class=col-span-3-->
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name xxx.top;
|
||||
|
||||
location / {
|
||||
access_log /data/logs/nginx/json_ip.log json;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header X-Real-Ip $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_pass http://127.0.0.1:9999;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 9999;
|
||||
|
||||
location / {
|
||||
access_log off;
|
||||
default_type application/json;
|
||||
return 200 "{\"ip\":\"$http_X_Real_Ip\"}";
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 判断请求参数
|
||||
<!--rehype:wrap-class=col-span-3-->
|
||||
|
||||
```nginx
|
||||
# 判断多个参数示例
|
||||
set $flagts 0;
|
||||
if ( $arg_aaa ~ "^aaa" ) {
|
||||
set $flagts "${flagts}1";
|
||||
}
|
||||
if ( $arg_bbb ~ "^bbb" ) {
|
||||
set $flagts "${flagts}1";
|
||||
}
|
||||
if ( $flagts = "011" ) {
|
||||
return 200;
|
||||
}
|
||||
```
|
||||
|
||||
### 流量镜像配置
|
||||
<!--rehype:wrap-class=col-span-3-->
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name 192.168.1.1;
|
||||
|
||||
location = /mirror1 {
|
||||
internal;
|
||||
#### address1 ####
|
||||
proxy_set_header Host mirror1.com;
|
||||
proxy_pass http://127.0.0.1:8008/api/service/list;
|
||||
}
|
||||
|
||||
location = /mirror2 {
|
||||
internal;
|
||||
#### address2 ####
|
||||
proxy_set_header Host mirror2.com;
|
||||
proxy_pass http://127.0.0.1:8009/api/service/list;
|
||||
}
|
||||
|
||||
# 只转发这个接口
|
||||
location /api/service/list {
|
||||
access_log /data/logs/nginx/json_test_to_mirror.log json;
|
||||
mirror /mirror1;
|
||||
mirror /mirror2;
|
||||
proxy_pass http://127.0.0.1:8007;
|
||||
}
|
||||
|
||||
location / {
|
||||
access_log /data/logs/nginx/json_test.log json;
|
||||
proxy_pass http://192.168.1.1:8007;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
### 流量镜像配置
|
||||
<!--rehype:wrap-class=col-span-3-->
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name 192.168.1.1;
|
||||
|
||||
location = /mirror1 {
|
||||
internal;
|
||||
#### address1 ####
|
||||
proxy_set_header Host mirror1.com;
|
||||
proxy_pass http://127.0.0.1:8008/api/service/list;
|
||||
}
|
||||
|
||||
location = /mirror2 {
|
||||
internal;
|
||||
#### address2 ####
|
||||
proxy_set_header Host mirror2.com;
|
||||
proxy_pass http://127.0.0.1:8009/api/service/list;
|
||||
}
|
||||
|
||||
# 只转发这个接口
|
||||
location /api/service/list {
|
||||
access_log /data/logs/nginx/json_test_to_mirror.log json;
|
||||
mirror /mirror1;
|
||||
mirror /mirror2;
|
||||
proxy_pass http://127.0.0.1:8007;
|
||||
}
|
||||
|
||||
location / {
|
||||
access_log /data/logs/nginx/json_test.log json;
|
||||
proxy_pass http://192.168.1.1:8007;
|
||||
}
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
另见
|
||||
---
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user