首頁?>?知識?資訊?>?php Wisers網(wǎng)站技術(shù)運維服務說明 ?>?正文

php Wisers網(wǎng)站技術(shù)運維服務說明

2021/6/24 0:00:00 · 稿源:傳誠信



一、技術(shù)部分

后端基于thinkphp5.1框架

簡介

ThinkPHP是一個開源的,快速、簡單的面向?qū)ο蟮妮p量級PHP開發(fā)框架,是為了敏捷WEB應用開發(fā)和簡化企業(yè)應用開發(fā)而誕生的。ThinkPHP從誕生以來一直秉承簡潔實用的設計原則,在保持出色的性能和至簡的代碼的同時,也注重易用性。遵循Apache2開源許可協(xié)議發(fā)布,開發(fā)文檔健全。

?

命名規(guī)范

ThinkPHP5遵循PSR-2命名規(guī)范和PSR-4自動加載規(guī)范,并且注意如下規(guī)范:

目錄和文件

·?目錄使用小寫+下劃線;

·?類庫、函數(shù)文件統(tǒng)一以.php為后綴;

·?類的文件名均以命名空間定義,并且命名空間的路徑和類庫文件所在路徑一致;

·?類文件采用駝峰法命名(首字母大寫),其它文件采用小寫+下劃線命名;

·?類名和類文件名保持一致,統(tǒng)一采用駝峰法命名(首字母大寫);

函數(shù)和類、屬性命名

·?類的命名采用駝峰法(首字母大寫),例如?User、UserType,默認不需要添加后綴,例如UserController應該直接命名為User;

·?函數(shù)的命名使用小寫字母和下劃線(小寫字母開頭)的方式,例如?get_client_ip;

·?方法的命名使用駝峰法(首字母小寫),例如?getUserName;

·?屬性的命名使用駝峰法(首字母小寫),例如?tableName、instance;

·?以雙下劃線“__”打頭的函數(shù)或方法作為魔術(shù)方法,例如?__call??__autoload;

常量和配置

·?常量以大寫字母和下劃線命名,例如?APP_PATH?THINK_PATH;

·?配置參數(shù)以小寫字母和下劃線命名,例如?url_route_on?url_convert;

數(shù)據(jù)表和字段

·?數(shù)據(jù)表和字段采用小寫加下劃線方式命名,并注意字段名不要以下劃線開頭,例如?think_user?表和?user_name字段,不建議使用駝峰和中文作為數(shù)據(jù)表字段命名。

應用類庫命名空間規(guī)范

應用類庫的根命名空間統(tǒng)一為app(不建議更改,可以設置app_namespace配置參數(shù)更改,V5.0.8版本開始使用APP_NAMESPACE常量定義);
例如:
app\index\controller\Indexapp\index\model\User

?

目錄結(jié)構(gòu)

目錄結(jié)構(gòu)

?

架構(gòu)總覽

ThinkPHP5.0應用基于MVC(模型-視圖-控制器)的方式來組織。

MVC是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型(M)、視圖(V)、控制器(C),它們各自處理自己的任務。

5.0URL訪問受路由決定,如果關(guān)閉路由或者沒有匹配路由的情況下,則是基于:

http://serverName/index.php(或者其它應用入口文件)/模塊/控制器/操作/參數(shù)/

下面的一些概念有必要做下了解,可能在后面的內(nèi)容中經(jīng)常會被提及。

入口文件

用戶請求的PHP文件,負責處理一個請求(注意,不一定是URL請求)的生命周期,最常見的入口文件就是index.php,有時候也會為了某些特殊的需求而增加新的入口文件,例如給后臺模塊單獨設置的一個入口文件admin.php或者一個控制器程序入口think都屬于入口文件。

應用

應用在ThinkPHP中是一個管理系統(tǒng)架構(gòu)及生命周期的對象,由系統(tǒng)的?\think\App類完成,應用通常在入口文件中被調(diào)用和執(zhí)行,具有相同的應用目錄(APP_PATH)的應用我們認為是同一個應用,但一個應用可能存在多個入口文件。

應用具有自己獨立的配置文件、公共(函數(shù))文件。

模塊

一個典型的應用是由多個模塊組成的,這些模塊通常都是應用目錄下面的一個子目錄,每個模塊都有自己獨立的配置文件、公共文件和類庫文件。

5.0支持單一模塊架構(gòu)設計,如果你的應用下面只有一個模塊,那么這個模塊的子目錄可以省略,并且在應用配置文件中修改:

'app_multi_module'?=> false,?

控制器

每個模塊擁有獨立的MVC類庫及配置文件,一個模塊下面有多個控制器負責響應請求,而每個控制器其實就是一個獨立的控制器類。

控制器主要負責請求的接收,并調(diào)用相關(guān)的模型處理,并最終通過視圖輸出。嚴格來說,控制器不應該過多的介入業(yè)務邏輯處理。

事實上,5.0中控制器是可以被跳過的,通過路由我們可以直接把請求調(diào)度到某個模型或者其他的類進行處理。

5.0的控制器類比較靈活,可以無需繼承任何基礎類庫。

一個典型的Index控制器類如下:

namespace app\index\controller;??class Index??{?????public function?index()?????{?????????return?'hello,thinkphp!';?????}?}?

操作

一個控制器包含多個操作(方法),操作方法是一個URL訪問的最小單元。

下面是一個典型的Index控制器的操作方法定義,包含了兩個操作方法:

namespace app\index\controller;??class Index??{?????public function?index()?????{?????????return?'index';?????}??????????public function?hello($name)?????{?????????return?'Hello,'.$name;?????}?}?

操作方法可以不使用任何參數(shù),如果定義了一個非可選參數(shù),則該參數(shù)必須通過用戶請求傳入,如果是URL請求,則通常是$_GET或者$_POST方式傳入。

模型

模型類通常完成實際的業(yè)務邏輯和數(shù)據(jù)封裝,并返回和格式無關(guān)的數(shù)據(jù)。

模型類并不一定要訪問數(shù)據(jù)庫,而且在5.0的架構(gòu)設計中,只有進行實際的數(shù)據(jù)庫查詢操作的時候,才會進行數(shù)據(jù)庫的連接,是真正的惰性連接。
ThinkPHP的模型層支持多層設計,你可以對模型層進行更細化的設計和分工,例如把模型層分為邏輯層/服務層/事件層等等。

視圖

控制器調(diào)用模型類后返回的數(shù)據(jù)通過視圖組裝成不同格式的輸出。視圖根據(jù)不同的需求,來決定調(diào)用模板引擎進行內(nèi)容解析后輸出還是直接輸出。

視圖通常會有一系列的模板文件對應不同的控制器和操作方法,并且支持動態(tài)設置模板目錄。

驅(qū)動

系統(tǒng)很多的組件都采用驅(qū)動式設計,從而可以更靈活的擴展,驅(qū)動類的位置默認是放入核心類庫目錄下面,也可以重新定義驅(qū)動類庫的命名空間而改變驅(qū)動的文件位置。

行為

行為(Behavior)是在預先定義好的一個應用位置執(zhí)行的一些操作。類似于AOP編程中的切面的概念,給某一個切面綁定相關(guān)行為就成了一種類AOP編程的思想。所以,行為通常是和某個位置相關(guān),行為的執(zhí)行時間依賴于綁定到了哪個位置上。

要執(zhí)行行為,首先要在應用程序中進行行為偵聽,例如:

// app_init位置偵聽行為?\think\Hook::listen('app_init');?

然后對某個位置進行行為綁定:

// 綁定行為到app_init位置?\think\Hook::add('app_init','\app\index\behavior\Test');?

一個位置上如果綁定了多個行為的,按照綁定的順序依次執(zhí)行,除非遇到中斷。


前端基于React框架

l?關(guān)于服務器配置建議

服務器配置建議


二、技術(shù)運維服務內(nèi)容

一年的技術(shù)維護服務內(nèi)容包括:在乙方服務責任范圍內(nèi)保證網(wǎng)站的正常運行使用。但不包括因非本合同內(nèi)乙方提供的服務器、網(wǎng)絡等因素引起的訪問故障、因非乙方人員錯誤操作所造成的運行故障或網(wǎng)站結(jié)構(gòu)的改變、設計風格的改變和功能模塊的增加、網(wǎng)站內(nèi)容維護。詳情如下:

?

1、安全漏洞修補
對由甲方或甲方委托的第三方安全技術(shù)代理公司查出的安全漏洞進行代碼修補。


2、災難修復
若正式上線的服務器,即網(wǎng)站服務環(huán)境發(fā)生崩潰,配合甲方公司進行系統(tǒng)的恢復工作,恢復到系統(tǒng)交接時的狀態(tài),即正式上線節(jié)點時狀態(tài),數(shù)據(jù)需由甲方公司提供數(shù)據(jù)庫備份文件和用戶文件(上傳文件)備份。


3、技術(shù)保障
3.1對于使用方面的問題,提供電話維護。
3.2維護項目包括由于系統(tǒng)設計問題而出現(xiàn)的系統(tǒng)故障、系統(tǒng)運行錯誤。非軟件系統(tǒng)設計問題,如:硬件損壞、使用者操作不當、使用者惡意行為造成的系統(tǒng)問題故障不含在維護范圍內(nèi)。

?

二、?服務方式

出現(xiàn)問題或故障后,甲方通過郵件/電話等形式向乙方提出要求,乙方根據(jù)甲方要求的以下一種或幾種服務方式為甲方提供服務:

1、電話應答服務

乙方為甲方指定經(jīng)驗豐富的專職人員,與甲方相關(guān)人員對接。負責解答、幫助處理在使用過程中所遇到的故障或困難。

2、遠程桌面協(xié)作服務

甲方須向乙方開放服務器的遠程桌面服務,以便于乙方對甲方的網(wǎng)站系統(tǒng)進行正常的維護和故障排除。

乙方承諾未經(jīng)甲方書面許可,不將甲方服務器任何信息向任意第三方傳播,否則應當賠償由此給甲方造成的損失。此義務不因本合同的終止而終止。

?

3、上門服務

如確有必要,經(jīng)由甲乙雙方協(xié)商,指定專業(yè)人員,上門服務。


三、?服務響應時間

1.工作日響應時間為:5*8小時

2.出現(xiàn)上述問題或其他異常問題,甲方通過郵件的形式向乙方提出要求后,乙方將在24小時內(nèi)(以甲方發(fā)出的郵件記錄的時間為起點)處理完成。

3.若有突發(fā)或緊急情況不在工作時間內(nèi),可與項目經(jīng)理協(xié)商極速解決。

?

四、?后期托管維護內(nèi)容清單和報價

設計人/天:1500(元)

技術(shù)人/天:2500(元)

分類

項目名稱

說明

人天

備注

Banner設計

手繪/合成

根據(jù)客戶實際內(nèi)容資料及使用場景,進行banner圖設計

3.0


一級欄目設計


根據(jù)主題及內(nèi)容要求,進行頁面設計(高度在3屏內(nèi))

6.0


二級欄目設計


根據(jù)主題及內(nèi)容要求,進行頁面設計(高度在6屏內(nèi))

3.5


頁面制作


根據(jù)網(wǎng)站UI設計進行JS腳本開發(fā),如頁面交互效果的實現(xiàn)。

將設計稿按W3C標準HTML頁面進行制作、兼容pc端:ie9+,chrome 59+,firefox 54+,safari 10.1+;移動端:ios的safari,Andriod,F(xiàn)lyme,MIUI,ColorOS,EMUI 默認瀏覽器,微信、微博內(nèi)置瀏覽器,品牌瀏覽器firefox,opera,chrome,UC,QQ,360,百度瀏覽器中頁面響應,展示最佳效果。

2.0


icon設計

icon設計

頁面中的獨立icon設計

1.0


技術(shù)部分


前端+后臺服務

根據(jù)實際需求評估人/天


備注說明:

*?價格為服務人/天單價,最終以實際作業(yè)數(shù)量核算。

* 不包含正版圖片等采購費用


  • 相關(guān)推薦
  • 大家在看
熱文
  • 熱門
  • 最新
客戶服務
咨詢熱線

010-62199213

24小時咨詢熱線

139-1050-5354