当前位置:论坛首页 > Linux面板 > 求助

【已解决】自定义的403页面不生效,求助

发表在 Linux面板2020-12-14 01:51 [复制链接] 1 1555

我有一个网站是针对国外访问的,需要屏蔽国内访问。通过调用一个ip数据库来判断是否是国内用户访问,国内用户访问的话就执行403.
我编译了geoip后,在nginx的http模块加入了以下代码:
  1. geoip2 /usr/share/GeoIP/Country.mmdb {
  2.   $geoip2_data_country_code country iso_code;
  3.                   }
  4.         map $geoip2_data_country_code $allowed_country {
  5.   default yes;
  6.   CN no;
  7.         }
复制代码
然后在网站配置文件加入了以下代码:
  1. error_page 403 /403.html;

  2.     if ($allowed_country = no) {
  3.       return 403;
  4.     }
复制代码
并在网站根目录增加了403.html文件,写入了一些东西,但是页面没有调用到403.html。
截屏2020-12-14 01.50.31.png
使用道具 举报 只看该作者 回复
发表于 2020-12-14 03:37:34 | 显示全部楼层
已经解决。。。
  1.     location / {
  2.       if ($allowed_country = no) {
  3.         return 403;
  4.       }
  5.       location  /403.html {   
  6.         allow all;
  7.       }
  8.     }
复制代码

改为这样就可以了
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析

工作时间:09:00至18:30

快速回复 返回顶部 返回列表