宝塔nginx安装geoip2

复制代码
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; }
相关推荐
易点云徐源14 小时前
HP 暗影精灵 PRO 16 安装双系统后,开机直接进入 Windows,按 F9 才能进入 Ubuntu:GRUB 菜单不显示的处理方法
linux·运维·ubuntu
Sayai19 小时前
Ubuntu 开发环境搭建避坑(一):网卡 EEE 致 60% 周期性丢包,Realtek RTL8125 网络黑洞排查与修复
linux·运维·网络·ubuntu·性能优化
牢姐与蒯19 小时前
WSL2 迁移教程:把Ubuntu+WSL2从C盘挪到别的盘
linux·运维·服务器·网络·ubuntu·1024程序员节
小菜要扣篮21 小时前
Ubuntu 下使用 vscode 打开 C++ 项目后,无法通过 F12 定位到定义问题解决
c++·vscode·ubuntu
hhhjhl2 天前
Undici 跨端三方库仓颉适配全流程
java·开发语言·ubuntu
~城南花已开~3 天前
Intel E810 SR-IOV VF Spoofcheck 防伪造测试-KVM3
服务器·网络·笔记·学习·ubuntu·etl工程师
十年磨一剑~3 天前
APT 仓库包查看方法文档
linux·ubuntu
技术小事3 天前
Surface 装 Ubuntu 双系统
linux·运维·ubuntu
五块钱的方便面3 天前
ubuntu下networkmanager不让管理解决办法
linux·运维·ubuntu
根目录下的猫3 天前
ArkTS 代码中如何添加作者信息
linux·运维·ubuntu