国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

thinkphp5增加允許指定ip訪問模塊配置

ISherry / 1387人閱讀

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

在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);
        }
        
        // ......
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/28772.html

相關文章

  • wamp非集成安裝

    摘要:新到公司首先就是自己搭建開發環境,原來一直用,被它的默認配置坑了的字符集要改為,所以自己做自己的配置非集成環境,下面安裝路徑可以進行參考一創建目錄目錄下再創建三個目錄二安裝我沒寫的代表默認,直接下一步就可以根目錄配置默認根目錄是在,現在改為 新到公司首先就是自己搭建開發環境,原來一直用phpstudy,被它的默認配置坑了【mysql的my.ini字符集要改為utf8】,所以自己做自己的...

    xiaoqibTn 評論0 收藏0
  • 基于ThinkPHP5拿來即用高性能后臺管理系統

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

    894974231 評論0 收藏0
  • 基于ThinkPHP5拿來即用高性能后臺管理系統

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

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

    摘要:異常處理上節解讀源碼一自動加載看完了自動加載部分,根據代碼執行順序,的行注冊錯誤和異常處理機制加載慣例配置文件下面的加載配置文件不用說,現在重點看一下異常處理。博客鏈接解讀源碼二異常處理和請求生命周期 異常處理 上節解讀 thinkphp5 源碼(一):自動加載看完了自動加載部分,根據代碼執行順序,base.php的59-64行 // 注冊錯誤和異常處理機制 hinkError::r...

    yuanzhanghu 評論0 收藏0

發表評論

0條評論

ISherry

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<