L79
geo 模塊默認編譯進nginx 可以通過--without-http_geo_module禁用
Syntax: | geo [ |
---|---|
Default: | — |
Context: | http |
- 1:如果geo指令后不輸入$address 那么默認就使用變量$remite_addr作為ip地址
- 2:{} 內的指令匹配:優先最長匹配
geo $country { default ZZ; proxy 116.196.115.53; 127.0.0.0/24 US; 127.0.0.1/32 RU; 10.1.0.0/16 RU; 192.168.1.0/24 UK; } server { listen 80; server_name shop.com.cn location /{ return 200 '$country\n'; } }
然后測試該配置 curl -H 'X-Forwarded-For:192.168.1.123' https://shop.com.cn/
返回 UK 字符串 因為匹配到了 192.168.1.123