|
|
|
server {
|
|
|
|
listen 8080;
|
|
|
|
root /var/www/echoIP;
|
|
|
|
|
|
|
|
error_page 403 404 500 501 502 503 504 = /error.html;
|
|
|
|
|
|
|
|
set_real_ip_from 0.0.0.0/0;
|
|
|
|
real_ip_header X-Real-IP;
|
|
|
|
|
|
|
|
location = /ua {
|
|
|
|
if ($http_user_agent ~* (curl|wget)) {
|
|
|
|
return 200 $http_user_agent\n;
|
|
|
|
}
|
|
|
|
default_type application/json;
|
|
|
|
return 200 $http_user_agent;
|
|
|
|
}
|
|
|
|
|
|
|
|
location = / {
|
|
|
|
set $query_param ?justip=true&cli=true;
|
|
|
|
if ($http_user_agent ~* (curl|wget)) {
|
|
|
|
proxy_pass http://127.0.0.1:8080/query$query_param;
|
|
|
|
}
|
|
|
|
index index.html;
|
|
|
|
}
|
|
|
|
|
|
|
|
location = /ip {
|
|
|
|
set $query_param ?justip=true;
|
|
|
|
if ($http_user_agent ~* (curl|wget)) {
|
|
|
|
set $query_param $query_param&cli=true;
|
|
|
|
}
|
|
|
|
proxy_pass http://127.0.0.1:8080/query$query_param;
|
|
|
|
}
|
|
|
|
|
|
|
|
location = /version {
|
|
|
|
set $query_param ?version=true;
|
|
|
|
if ($http_user_agent ~* (curl|wget)) {
|
|
|
|
set $query_param $query_param&cli=true;
|
|
|
|
}
|
|
|
|
proxy_pass http://127.0.0.1:8080/query$query_param;
|
|
|
|
}
|
|
|
|
|
|
|
|
location ~* ^/([^/]+?)$ {
|
|
|
|
set $request_ip $1;
|
|
|
|
if ($http_user_agent ~* (curl|wget)) {
|
|
|
|
proxy_pass http://127.0.0.1:8080/info/$request_ip;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
location ^~ /info {
|
|
|
|
set $is_legal 0;
|
|
|
|
set $query_param ?cli=false;
|
|
|
|
if ($http_user_agent ~* (curl|wget)) {
|
|
|
|
set $query_param ?cli=true;
|
|
|
|
}
|
|
|
|
if ($uri ~* ^/info/?$) {
|
|
|
|
set $is_legal 1;
|
|
|
|
}
|
|
|
|
if ($uri ~* ^/info/([^/]+?)$) {
|
|
|
|
set $is_legal 1;
|
|
|
|
set $query_param $query_param&ip=$1;
|
|
|
|
}
|
|
|
|
if ($is_legal = 0) {
|
|
|
|
set $query_param $query_param&error=true;
|
|
|
|
}
|
|
|
|
proxy_pass http://127.0.0.1:8080/query$query_param;
|
|
|
|
}
|
|
|
|
|
|
|
|
location = /query {
|
|
|
|
include fastcgi_params;
|
|
|
|
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
|
|
|
|
fastcgi_param SCRIPT_FILENAME /var/www/echoIP/backend/queryInfo.php;
|
|
|
|
}
|
|
|
|
}
|