首先用rust写一个小工具
https://github.com/liu-wh/check-ip-source
接着我们安装openresty
wget https://openresty.org/package/centos/openresty.repo sudo mv openresty.repo /etc/yum.repos.d/openresty.repo sudo yum -y install openresty
默认配置文件在/usr/local/openresty/nginx/conf/nginx.conf
location / {
limit_except GET {
deny all;
}
if ($http_x_forwarded_for = "" ) {
return 200 "hello world";
}
set_by_lua $address '
local ngx = require "ngx"
local s = ngx.var.http_x_forwarded_for
local j = io.popen("/app/shell/rust-ipcheck \'".. s .."\'")
local x = j:read("*a")
j.close()
return x;
';
if ($address ~ '^se$') {
rewrite ^/(.*) https://xxxxx/$1 redirect;
}
root /data/centos7-1810/;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
发表回复