业务经理

微信扫描以上二维码

028-61286886

技术咨询

禁止前端控制器访问,不让访问首页界面

迅睿框架 更新 2021-08-29 20:22:31 小白一枚

PHP程序里面

禁止前端控制器访问,不让访问首页界面

https://www.xunruicms.com/doc/973.html

前面有发过2帖请教,官方也出了一个文档,

\Phpcmf\Hooks::on('cms_init', function() {
    
    if (IS_ADMIN || IS_API) {
        return;
    } else {
        exit("前端禁止访问");
    }
    
});

但这并不能排除所有API,比如微信公众号,可以加上 

 || APP_DIR=='weixin'

但还有各种API接口,如发布接口,读取接口,也无法访问了,如何排除呢?

/index.php?appid=[授权ID]&appsecret=[授权码]&api_auth_code=[登录授权码]&api_auth_uid=[用户id]&s=member&app=news&c=home&m=add


除此外,也不知道还有没有其它接口的,希望此帖能收集整理下


PHP文件:
URL地址:

方案

  • 大帅哥 #1 · 2020-08-11 15:33:02
    if (IS_ADMIN || IS_API || APP_DIR=='weixin') {
            return;
        } else {
            exit("前端禁止访问");
        }
    这样就可以了,is_api就表示api插件的appid地址
  • 小白一枚 #2 · 2020-08-11 15:34:53
    大帅哥 实测不行的呢。
    image
  • 琉惗 #3 · 2020-08-11 16:31:59
    你这个钩子是初始化的时候默认这些不能访问啊
  • 九戒 #4 · 2020-08-11 16:36:28
    满意答案
    if (IS_ADMIN || IS_API_HTTP || IS_API || APP_DIR=='weixin') {
            return;
        } else {
            exit("前端禁止访问");
        }
    IS_API_HTTP
    表示api插件
  • 小白一枚 #5 · 2020-08-11 17:36:16
    九戒 你这个是对的,实测IS_API_HTTP才对API接口有效,比如发布接口
  • 小白一枚 #6 · 2021-08-29 20:22:31
    @九戒:感谢帮助,结帖

迅睿系统漏洞

GEO系统
GEO系统(2026-09-15)
运营客户端,防止误触阴影处关闭对话框
独立站群系统
独立站群系统(2026-09-14)
子站独立部署时修复同步附件失败问题
在线客服
在线客服(2026-09-13)
修复删除会话报错问题 删除会话时联动删除聊天图片
在线考试竞赛系统
在线考试竞赛系统(2026-09-12)
增加投票功能 考试功能拓展 注意:更新后需要执行系统更新,更新数...
网上信箱
网上信箱(2026-09-12)
修复新版本兼容问题
GeoSeo收录宝
GeoSeo收录宝(2026-09-12)
1 优化Update.php文件,解决版本在线升级不完整问题 2 ...
GeoSeo工具箱
GeoSeo工具箱(2026-09-11)
修正历史记录推送
微信系统
微信系统(2026-09-11)
增加数据统计总览界面 账号管理增加服务和公众号的区别 菜单管理支持更...
答题系统
答题系统(2026-09-11)
一站式在线答题系统,支持真题考试、题库练习和错题本,适合培训、考证、...
阿里云滑动验证码
阿里云滑动验证码(2026-09-10)
采用阿里云验证码替换迅睿系统自带的图片验证码和滑动验证码。后台设置方...