成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

thinkphp5增加允許指定ip訪問(wèn)模塊配置

ISherry / 1395人閱讀

摘要:在中添加設(shè)置某些可以訪問(wèn)指定模塊所有都可以訪問(wèn)模塊,僅這兩個(gè)可以訪問(wèn)模塊最好加在這個(gè)位置禁止訪問(wèn)模塊設(shè)置某些可以訪問(wèn)指定模塊默認(rèn)控制器名需要修改框架代碼代碼位置如下多模塊部署綁定模塊設(shè)置了限制訪問(wèn)模塊如模塊初始化初始化模塊模塊請(qǐng)求緩存檢查

在config.php中添加

"allow_module_ip" => ["admin" => "*"], // 設(shè)置某些ip可以訪問(wèn)指定模塊

["admin" => "*"] 所有ip都可以訪問(wèn)admin模塊,
["admin" => ["127.0.0.1","192.168.1.100"]] 僅這兩個(gè)ip可以訪問(wèn)admin模塊

最好加在這個(gè)位置

// 禁止訪問(wèn)模塊
"deny_module_list"       => ["common"],
// 設(shè)置某些ip可以訪問(wèn)指定模塊
"allow_module_ip"        => ["admin" => "*"],
// 默認(rèn)控制器名
"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 設(shè)置了限制ip訪問(wèn)模塊, 如:"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);
                // 模塊請(qǐng)求緩存檢查
                $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);
        }
        
        // ......
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/28772.html

相關(guān)文章

  • wamp非集成安裝

    摘要:新到公司首先就是自己搭建開(kāi)發(fā)環(huán)境,原來(lái)一直用,被它的默認(rèn)配置坑了的字符集要改為,所以自己做自己的配置非集成環(huán)境,下面安裝路徑可以進(jìn)行參考一創(chuàng)建目錄目錄下再創(chuàng)建三個(gè)目錄二安裝我沒(méi)寫(xiě)的代表默認(rèn),直接下一步就可以根目錄配置默認(rèn)根目錄是在,現(xiàn)在改為 新到公司首先就是自己搭建開(kāi)發(fā)環(huán)境,原來(lái)一直用phpstudy,被它的默認(rèn)配置坑了【mysql的my.ini字符集要改為utf8】,所以自己做自己的...

    xiaoqibTn 評(píng)論0 收藏0
  • 基于ThinkPHP5拿來(lái)即用高性能后臺(tái)管理系統(tǒng)

    摘要:數(shù)據(jù)庫(kù)文件已經(jīng)上傳,安裝配置就可以使用簡(jiǎn)稱即基于的后臺(tái)管理系統(tǒng)官方文檔地址在線體驗(yàn)地址賬戶密碼線上倉(cāng)庫(kù)在線地址源代碼下載克隆直接下載本地部署運(yùn)行環(huán)境要求建議配置虛擬域名若不清楚,請(qǐng)自行解決之,方便接下來(lái)開(kāi)展你的開(kāi)發(fā)工作。 喜歡就Star,不只是Fork; 想要分享的動(dòng)機(jī)才是驅(qū)動(dòng)力,而技術(shù)僅僅是一種方法。 數(shù)據(jù)庫(kù)文件已經(jīng)上傳,安裝配置就可以使用 showImg(https://seg...

    894974231 評(píng)論0 收藏0
  • 基于ThinkPHP5拿來(lái)即用高性能后臺(tái)管理系統(tǒng)

    摘要:數(shù)據(jù)庫(kù)文件已經(jīng)上傳,安裝配置就可以使用簡(jiǎn)稱即基于的后臺(tái)管理系統(tǒng)官方文檔地址在線體驗(yàn)地址賬戶密碼線上倉(cāng)庫(kù)在線地址源代碼下載克隆直接下載本地部署運(yùn)行環(huán)境要求建議配置虛擬域名若不清楚,請(qǐng)自行解決之,方便接下來(lái)開(kāi)展你的開(kāi)發(fā)工作。 喜歡就Star,不只是Fork; 想要分享的動(dòng)機(jī)才是驅(qū)動(dòng)力,而技術(shù)僅僅是一種方法。 數(shù)據(jù)庫(kù)文件已經(jīng)上傳,安裝配置就可以使用 showImg(https://seg...

    SHERlocked93 評(píng)論0 收藏0
  • 解讀 thinkphp5 源碼(二):異常處理和請(qǐng)求生命周期

    摘要:異常處理上節(jié)解讀源碼一自動(dòng)加載看完了自動(dòng)加載部分,根據(jù)代碼執(zhí)行順序,的行注冊(cè)錯(cuò)誤和異常處理機(jī)制加載慣例配置文件下面的加載配置文件不用說(shuō),現(xiàn)在重點(diǎn)看一下異常處理。博客鏈接解讀源碼二異常處理和請(qǐng)求生命周期 異常處理 上節(jié)解讀 thinkphp5 源碼(一):自動(dòng)加載看完了自動(dòng)加載部分,根據(jù)代碼執(zhí)行順序,base.php的59-64行 // 注冊(cè)錯(cuò)誤和異常處理機(jī)制 hinkError::r...

    yuanzhanghu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<