您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

thinkphp5怎么增加允许指定ip访问模块配置

2024/3/11 12:11:17发布15次查看
下面由thinkphp教程栏目给大家介绍thinkphp5增加允许指定ip访问模块配置方法,希望对需要的朋友有所帮助!
thinkphp5增加允许指定ip访问模块配置
在config.php中添加
'allow_module_ip' => ['admin' => '*'], // 设置某些ip可以访问指定模块
['admin' => '*'] 所有ip都可以访问admin模块,
['admin' => ['127.0.0.1','192.168.1.100']] 仅这两个ip可以访问admin模块
最好加在这个位置
// 禁止访问模块'deny_module_list'       => ['common'],// 设置某些ip可以访问指定模块'allow_module_ip'        => ['admin' => '*'],// 默认控制器名'default_controller'     => 'index',
需要修改框架代码
thinkphp/library/think/app.php
代码位置如下
public static function module($result, $config, $convert = null) {        if (is_string($result)) {            $result = explode('/', $result);        }        $request = request::instance();        if ($config['app_multi_module']) {            // 多模块部署            $module    = strip_tags(strtolower($result[0] ?: $config['default_module']));            $bind      = route::getbind('module');            $available = false;            if ($bind) {                // 绑定模块                list($bindmodule) = explode('/', $bind);                if (empty($result[0])) {                    $module    = $bindmodule;                    $available = true;                } elseif ($module == $bindmodule) {                    $available = true;                }            } elseif (!in_array($module, $config['deny_module_list']) && is_dir(app_path . $module)) {                $available = true;            }                        //region 设置了限制ip访问模块, 如:'allow_module_ip' => ['admin'=>['127.0.0.1']]            if (isset($config['allow_module_ip']) && isset($config['allow_module_ip'][$module])) {                $allowips = $config['allow_module_ip'][$module];                if (!in_array($_server['remote_addr'], $allowips) && $allowips != '*') {                    $available = false;                }            }            //end region            // 模块初始化            if ($module && $available) {                // 初始化模块                $request->module($module);                $config = self::init($module);                // 模块请求缓存检查                $request->cache($config['request_cache'], $config['request_cache_expire'], $config['request_cache_except']);            } else {                throw new httpexception(404, 'module not exists:' . $module);            }        } else {            // 单一模块部署            $module = '';            $request->module($module);        }                // ......}
相关推荐:最新的10个thinkphp视频教程
以上就是thinkphp5怎么增加允许指定ip访问模块配置的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product