999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談網站后臺管理系統防翻墻的設計與實現

2020-09-17 13:41:32張世雄
科學與信息化 2020年24期

張世雄

摘 要 網站的后臺管理系統是一個網站最重要的部分,網站前端中大部分數據都來自于后臺管理系統的操作,這樣,后臺管理系統的安全就顯得尤為重要。本文主要利用PHP技術及Session會話對象設計兩種方法實現針對后臺的防翻墻。

關鍵詞 后臺管理系統;Session會話;防翻墻;PHP技術

引言

一個完整的網站分為web前端與后臺管理系統兩部分。前端負責數據的展示,后臺管理系統負責完成對數據庫的增、刪、改操作。所以必須擁有一定權限的后臺管理員才能操作后臺系統,對于沒有權限而操作后臺的行為是堅決不允許的。本文以開源后臺框架X-admin網站后臺管理系統設計并實現防止那些沒有權限而想進入后臺操作數據的行為,保證后臺數據的安全。

1設計思想

1.1 防翻墻概念

對于不是從登錄頁面輸入正確的賬號和密碼,而直接進入后臺管理頁面的行為,統稱為翻墻。所以防翻墻,就是防止這種行為,如果沒有登錄而直接運行后臺頁面,則會返回到登錄頁面要求進行賬號密碼輸入。

1.2 設計思想

(1)簡易版

登錄成功后,將登錄的信息(如登錄用戶名)添加到Session文件中,由于Session文件是可以被所有php頁面訪問,根據這個特點,對后臺中需要登錄權限的php頁面在運行之前先檢測Session文件中是否有登錄信息,如果有,則表示已登錄,可以進行增刪改查方面的操作,否則,返回到登錄頁面。基于這種操作的地方有很多,則可以在functions.php文件中創建一個公共函數進行判斷。實現流程如圖1所示。

(2)高級版

在網站配置文件中設置需要攔截的文件夾,將該文件夾及所有的子文件夾和文件中是php文件進行攔截;同時還可以設置該文件夾下排除之外不需攔截的文件。可以將實現的邏輯代碼放入到Model類中,在對類實例化之前進行判斷攔截,這樣,文件中只要操作Model類,則必先進行是否需要先進行登錄,才能操作。實現流程圖如圖2:

1.3 相關知識點

(1)PHP

PHP即“超文本預處理器”,是一種通用開源腳本語言。PHP是在服務器端執行的腳本語言,與C語言類似,是常用的網站編程語言。PHP獨特的語法混合了C、Java、Perl以及 PHP 自創的語法。利于學習,使用廣泛,主要適用于Web開發領域。

(2)Session是什么

Session是瀏覽器與服務器之間的一次交互會話,即從瀏覽器與服務器之間的對話。瀏覽器打開表示會話進行,瀏覽器關閉則會話結束。會話結束后將無法讀取剛剛會話的Session文件里面的信息。

(3)X-admin后臺管理模板框架

1)X-admin是基于layui的輕量級前端后臺管理框架,簡單,兼容性好,永久免費,面向所有層次的前后端程序員。

2)內置功能豐富:Xadmin作為一款全面的后臺管理系統框架,不僅提供了基本的CRUD功能,還內置了豐富的插件功能。包括數據導出、書簽、圖表、數據添加向導及圖片相冊等多種擴展功能。

3)后臺實際就是對表的增刪改查,從某種程度上來講不依賴于業務邏輯,又可以在后臺對每張表管理時加入自己的后臺邏輯,這也是它優于很多后臺管理系統的原因。

(4)Model類

Model類是一個通過PHP面向對象技術能夠實現對數據庫進行CRUD操作的模型類。PHP框架如ThinkPHP、Laravel框架都有操作數據庫的模型類-3。

2具體實現

2.1 網站文件基本結構及說明

網站虛擬目錄

|--APP

|--Admin ? ? ? ? ? 后臺文件夾

|--login.html ? ? ?登錄頁面

|--.....

|--Home ? ? ? ? ? 前端文件夾

|--config.php ? ? ? ? 配置文件

|--functions.php ? ? ? 網站公共函數文件

|--index.html ? ? ? ? 網站首頁

文件夾說明:

Admin后臺文件夾存放網站所有后臺文件及子文件夾;

Home網站前端文件夾,存放網站前端所有文件夾及子文件夾;

Config.php文件是整個網站的配置信息文件;

Functions.php文件是整個網站的公共函數文件[4];

2.2 代碼實現

(1) 簡易版實現

Functions.php編寫登錄判斷函數isLogin( )

/**

* 函數名:isLogin

* 作用:判斷是否登錄

* 返回值:不成功,則返回到登錄頁面

*

*/

function isLogin(){

if(empty($_SESSION[‘username])){

//表示沒有經過登錄頁面

echo ??;

exit;

}else {

//表示已經登錄

// 改變默認名稱為PHPSESSID的cookie的有效期

setcookie(session_name(),session_id(),time() + COOKIE_LIFETIME,”/”);

}

}

(2) 后臺需要進行登錄判斷的文件代碼操作

以添加文章文件article-add.php為例

<?php

// 實現博文的添加

$datas = $_POST;//獲取傳遞過來的文件信息

$datas[‘pubdate] = time();

include ?../../../config.php?;//加載配置文件

isLogin();//調用登錄判斷函數進行是否登錄判斷

$result = DB::table(“articles”)->insert($datas);//成功返回true,失敗返回false

echo $result;

2.3 高級版實現

Config.php文件防翻墻文件夾設置

$root = $_SERVER[‘DOCUMENT_ROOT];

$cDir = str_replace(“\\”, “/”, __DIR__);//將斜杠進行替換:

$root = str_replace($root, “”, $cDir);

define(“ROOT”, $root);//網站根目錄設置成常量ROOT

//防翻墻攔截文件夾配置

$middleware = [

?allow” => [ROOT.”/APP/admin”],//需要攔截的文件夾 ?后臺文件夾

?except” => [ROOT.”/APP/admin/action/login.php”]//排除之外不需攔截的文件或文件

];

define(“MIDDLEWARE”,$middleware);//設置攔截文件夾數組常量

(1)Model類編寫middleware方法實現對文件夾下的php文件進行攔截

/**

* 該方法實現對文件夾下的php文件進行攔截,沒有通過返回到登錄頁面

*

*/

private static function middleware(){

$runFile = strtolower($_SERVER[‘PHP_SELF]);//獲取正在運行的文件 strtolower:作用將字符串轉換成小寫

$flag1 = $flag2 = false;

//判斷正在運行的文件是否是排除之外

foreach(MIDDLEWARE[‘except] as $key => $value){

$v = strtolower($value);//轉成小寫

if(strpos($runFile,$v) !== false){

$flag1 = true;//表示正在運行的文件是排除之外的文件

break;//提前退出循環

}

}

if (!$flag1){

//表示不是排除之外才會執行到這里

foreach(MIDDLEWARE[‘allow] as $key => $value){

$v = strtolower($value);

if (strpos($runFile,$v) !== false){

// ? ? ? ? ? ? ? ? ? ?表示正在運行的文件是需要攔截的文件

$flag2 = true;

break;//跳出循環

}

}

}

if($flag2 && empty($_SESSION[‘username])){

//表示是需要攔截的文件,同時又沒登錄 ?需要返回到登錄頁面

echo ??;

exit;

}

}

3攔截運行效果

如果在沒有登錄的情況下直接登錄后臺頁面,則會提示返回登錄頁面[5]。

運行效果圖見圖3:

4結束語

網站安全是一個網站能否正常上線必須考慮的問題,特別是后臺的安全是重中之重。防翻墻只是保證后臺安全的一個。本文通過兩種方法設計及實現了防翻墻。簡便實現法操作簡單,但是不夠靈活;高級版實現復雜,但是使用方便,各有優缺點。

參考文獻

[1] 張世雄.PHP操作MySql數據庫的面向對象模型類實現[J].清遠職業技術學院學報,2018,11(6):45-48.

[2] 曹俊.軟件項目健康跟蹤控制管理系統的設計與實現[J].科技創新與應用,2020(22):49-51.

[3] 趙越超.基于JavaEE的小區物業管理系統設計與實現[J].物聯網技術,2020,10(7):107-110.

[4] 程文清.基于B/S架構的開放實驗室管理系統設計與實現[J].中國現代教育裝備,2020,(13):31-33.

[5] 黃中海.高校學生工作信息在線采集系統設計與實現[J].軟件導刊,2020,19(7):144-147.

作者簡介

張世雄(1977-),男;畢業院校:華中科技大學,專業:軟件工程,學歷:碩士,現就職單位:清遠職業技術學院,研究方向:計算機科學與技術。

主站蜘蛛池模板: 99热这里只有精品2| 99在线视频网站| 精品无码人妻一区二区| 国产成人亚洲精品色欲AV| 在线看片免费人成视久网下载 | 中文字幕亚洲精品2页| 色丁丁毛片在线观看| 日韩av高清无码一区二区三区| 伊人成人在线| 91毛片网| 91视频免费观看网站| 免费国产高清视频| 亚洲AV一二三区无码AV蜜桃| 精品一区二区久久久久网站| 精品无码国产自产野外拍在线| 亚洲精品片911| 国产乱人免费视频| 欧美a√在线| 91久久国产成人免费观看| 久久99热这里只有精品免费看 | 四虎永久在线视频| 日韩第九页| 精品人妻一区无码视频| 久草视频中文| 91色在线观看| 麻豆AV网站免费进入| 毛片免费试看| 亚洲人成网站观看在线观看| 国产91九色在线播放| www.国产福利| 污网站在线观看视频| 亚洲一区二区三区麻豆| 国产小视频网站| 夜色爽爽影院18禁妓女影院| 日韩无码视频网站| 欧美性精品| 91麻豆久久久| 欧美日韩国产一级| 欧美一级大片在线观看| 尤物视频一区| 日韩福利视频导航| 日韩精品高清自在线| 久久久久无码国产精品不卡| 日韩一二三区视频精品| 亚洲swag精品自拍一区| 国产 在线视频无码| 911亚洲精品| 黄网站欧美内射| 波多野结衣久久精品| 亚洲色图欧美| 欧美成人精品高清在线下载| 97视频在线精品国自产拍| 亚洲综合中文字幕国产精品欧美| 国产一区二区精品福利| 亚洲动漫h| 中文无码精品A∨在线观看不卡| 欧美一道本| 秘书高跟黑色丝袜国产91在线 | 亚洲国产精品日韩欧美一区| 最近最新中文字幕在线第一页| 强奷白丝美女在线观看| 久久男人资源站| 久久99蜜桃精品久久久久小说| 4虎影视国产在线观看精品| 不卡无码h在线观看| 日韩第一页在线| 久久香蕉国产线| 亚洲毛片在线看| 亚洲国产天堂久久综合226114| 亚洲天堂网2014| 久青草国产高清在线视频| 免费一级毛片在线观看| 欧美日韩在线第一页| 色综合久久无码网| 亚洲视频影院| 国产内射在线观看| 亚洲热线99精品视频| 国产凹凸一区在线观看视频| 日本91在线| 四虎亚洲精品| 国产18在线| 亚洲一区波多野结衣二区三区|