1、安装依赖
sudo apt-get install libmaxminddb0 libmaxminddb-dev
2、下载模块
git clone https://github.com/leev/ngx_http_geoip2_module.git
3、查看nginx已安装模块
nginx -V
示例
configure arguments: --user=www --group=www --prefix=/www/server/nginx --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --with-openssl=/www/server/nginx/src/openssl --with-pcre=pcre-8.43 --with-http_v2_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --add-module=/www/server/nginx/src/ngx_http_substitutions_filter_module-master --with-ld-opt=-Wl,-E --with-cc-opt=-Wno-error --with-http_dav_module --add-module=/www/server/nginx/src/nginx-dav-ext-module
4、手动编译 cd /www/server/nginx/src/ 执行以下命令修改配置
./configure --prefix=/www/server/nginx --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --with-openssl=/www/server/nginx/src/openssl --with-pcre=pcre-8.43 --with-http_v2_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --add-module=/www/server/nginx/src/ngx_http_substitutions_filter_module-master --with-ld-opt=-Wl,-E --with-cc-opt=-Wno-error --with-http_dav_module --add-module=/www/server/nginx/src/nginx-dav-ext-module --add-module=/www/server/ngx_http_geoip2_module
5、解决编译中luajit模块异常,再执行4的命令
export LUAJIT_INC=/usr/local/include/luajit-2.1
export LUAJIT_LIB=/usr/local/lib
6、第4成功后,开始编译
make && make install
7、重启nginx
8、下载Country.mmdb库到服务器/www/server/Country.mmdb,在nginx中http模块配置
geoip2 /www/server/Country.mmdb {
auto_reload 5m ;
$geoip2_country_code country iso_code;
}
map $geoip2_country_code $allowed_country {
default yes;
CN no;
}
9、网站站点service中添加配置
# 匹配国家代码定义为no的,禁止访问,返回403(上面定义中国的 iso_code 为no)
if ( $allowed_country = no ) { return 403; }
宝塔nginx安装geoip2
十二月未完2024-08-08 4:06
相关推荐
小此方4 小时前
告别云服务器连接困扰——Windows下利用VirtualBox安装配置Ubuntu虚拟机详细教程Soari1 天前
Linux 内核对比:PREEMPT_DYNAMIC vs PREEMPT_RT明月不会写代码2 天前
Ubuntu 下 Kitty 终端配置记录weipt2 天前
利用wsl给windows电脑上安装一个ubuntu阿钱真强道2 天前
01 嵌入式操作系统 | 课程导论与虚拟机安装 UbuntuIT菜鸟程2 天前
Ubuntu 下 apt 版 Nginx 升级为源码编译版本完整操作指南(1.24.0 → 1.30.4 实战)Mr-Apple2 天前
系统找不到指定的文件-CreateInstance/CreateVm/HCS/ERROR_FILE_NOT_FOUND自律最差的编程狗2 天前
Ubuntu下Docker部署Ollama 轻量模型阿钱真强道2 天前
04 嵌入式操作系统 | 常用命令Ⅱ:用户权限、进程与网络阿钱真强道2 天前
03 嵌入式操作系统 | 常用命令Ⅰ:文件、查找与压缩