版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
本周內(nèi)容PHP安全PHP性能優(yōu)化本周內(nèi)容PHP安全1PHP安全輸入驗(yàn)證跨站點(diǎn)腳本阻止SQL注入代碼注入命令注入Session安全文件訪問安全沙盒PHP安全輸入驗(yàn)證2輸入驗(yàn)證輸入驗(yàn)證正則表達(dá)式Sanitizing和Logical過濾器清理輸入字符串輸入驗(yàn)證輸入驗(yàn)證3跨站點(diǎn)腳本攻擊阻止拒絕特殊字符利用HTTP-onlyCookie解決XSS使用filter_xss()阻止跨站點(diǎn)腳本攻擊跨站點(diǎn)腳本攻擊阻止拒絕特殊字符4SQL注入引號使用預(yù)編譯語句Like使用SQL錯誤處理其它風(fēng)險SQL注入引號使用5代碼注入路徑校驗(yàn)使用全路徑避免動態(tài)路徑驗(yàn)證文件名其它代碼注入風(fēng)險代碼注入路徑校驗(yàn)6命令注入通過命令注入使資源衰竭路徑使用隱含威脅命令注入通過命令注入使資源衰竭7Session安全服務(wù)器端的弱點(diǎn)URLSessionSession鼓動本地保護(hù)機(jī)制服務(wù)器端過期機(jī)制加密Session超出基于IP的驗(yàn)證Session安全服務(wù)器端的弱點(diǎn)8文件訪問安全加密讀權(quán)限加密寫權(quán)限上載文件現(xiàn)值文件前面安全模式PHP編碼根目錄管理文件訪問安全加密讀權(quán)限9沙盒使用沙盒誤導(dǎo)攻擊編譯沙盒IP地址限制路由信息沙盒使用沙盒誤導(dǎo)攻擊10PHP性能優(yōu)化PHP代碼人工優(yōu)化使用優(yōu)化工具優(yōu)化代碼頁面文件壓縮輸出Mysql緩存優(yōu)化配置數(shù)據(jù)庫優(yōu)化PHP性能優(yōu)化PHP代碼人工優(yōu)化11PHP代碼人工優(yōu)化(一)方法可靜態(tài)化,速率可提升至4倍使用echo而不是print使用echo的多重參數(shù),而不是字符串連接。便利數(shù)組時foreach比while大約快20%-30%左右。注銷那些不用的變量尤其是大數(shù)組,以便釋放內(nèi)存。盡量避免使用__get,__set,__autoload。在包含文件時使用完整路徑,解析操作系統(tǒng)路徑所需的時間會更少。函數(shù)代替正則表達(dá)式完成相同功能PHP代碼人工優(yōu)化(一)方法可靜態(tài)化,速率可提升至4倍12PHP代碼人工優(yōu)化(二)使用選擇分支語句(譯注:即switchcase)好于使用多個if,elseif語句。用@屏蔽錯誤消息的做法非常低效。打開apache的mod_deflate模塊。數(shù)據(jù)庫連接當(dāng)使用完畢時應(yīng)關(guān)掉。$row[‘id’]的效率是$row[id]的7倍。錯誤消息代價昂貴。盡量不要在for循環(huán)中使用函數(shù),比如for($x=0;$x<count($array);$x)每循環(huán)一次都會調(diào)用count()函數(shù)。PHP代碼人工優(yōu)化(二)使用選擇分支語句(譯注:即swit13PHP代碼人工優(yōu)化(三)在方法中遞增局部變量,速度是最快的。幾乎與在函數(shù)中調(diào)用局部變量的速度相當(dāng)。遞增一個全局變量要比遞增一個局部變量慢2倍。遞增一個對象屬性(如:$this->prop++)要比遞增一個局部變量慢3倍。遞增一個未預(yù)定義的局部變量要比遞增一個預(yù)定義的局部變量慢9至10倍。僅定義一個局部變量而沒在函數(shù)中調(diào)用它,同樣會減慢速度(其程度相當(dāng)于遞增一個局部變量)。PHP大概會檢查看是否存在全局變量。PHP代碼人工優(yōu)化(三)14PHP代碼人工優(yōu)化(四)方法調(diào)用看來與類中定義的方法的數(shù)量無關(guān),因?yàn)槲遥ㄔ跍y試方法之前和之后都)添加了10個方法,但性能上沒有變化。派生類中的方法運(yùn)行起來要快于在基類中定義的同樣的方法。調(diào)用帶有一個參數(shù)的空函數(shù),其花費(fèi)的時間相當(dāng)于執(zhí)行7至8次的局部變量遞增操作。類似的方法調(diào)用所花費(fèi)的時間接近于15次的局部變量遞增操作。用單引號代替雙引號來包含字符串,這樣做會更快一些。因?yàn)镻HP會在雙引號包圍的字符串中搜尋變量,單引號則不會。當(dāng)然,只有當(dāng)你不需要在字符串中包含變量時才可以這么做。輸出多個字符串時,用逗號代替句點(diǎn)來分隔字符串,速度更快。注意:只有echo能這么做,它是一種可以把多個字符串當(dāng)作參數(shù)的“函數(shù)”(譯注:PHP手冊中說echo是語言結(jié)構(gòu),不是真正的函數(shù),故把函數(shù)加上了雙引號)。PHP代碼人工優(yōu)化(四)15PHP代碼人工優(yōu)化(五)Apache解析一個PHP腳本的時間要比解析一個靜態(tài)HTML頁面慢2至10倍。盡量多用靜態(tài)HTML頁面,少用腳本。除非腳本可以緩存,否則每次調(diào)用時都會重新編譯一次。引入一套PHP緩存機(jī)制通??梢蕴嵘?5%至100%的性能,以免除編譯開銷。盡量做緩存,可使用memcached。memcached是一款高性能的內(nèi)存對象緩存系統(tǒng),可用來加速動態(tài)Web應(yīng)用程序,減輕數(shù)據(jù)庫負(fù)載。對運(yùn)算碼(OPcode)的緩存很有用,使得腳本不必為每個請求做重新編譯。并不是事必面向?qū)ο?OOP),面向?qū)ο笸_銷很大,每個方法和對象調(diào)用都會消耗很多內(nèi)存。并非要用類實(shí)現(xiàn)所有的數(shù)據(jù)結(jié)構(gòu),數(shù)組也很有用。PHP代碼人工優(yōu)化(五)16PHP代碼人工優(yōu)化(六)不要把方法細(xì)分得過多,仔細(xì)想想你真正打算重用的是哪些代碼?盡量采用大量的PHP內(nèi)置函數(shù)。如果在代碼中存在大量耗時的函數(shù),你可以考慮用C擴(kuò)展的方式實(shí)現(xiàn)它們。評估檢驗(yàn)(profile)你的代碼。檢驗(yàn)器會告訴你,代碼的哪些部分消耗了多少時間。Xdebug調(diào)試器包含了檢驗(yàn)程序,評估檢驗(yàn)總體上可以顯示出代碼的瓶頸。mod_zip可作為Apache模塊,用來即時壓縮你的數(shù)據(jù),并可讓數(shù)據(jù)傳輸量降低80%。我想要完成的任何事情PHP代碼人工優(yōu)化(六)17使用優(yōu)化工具優(yōu)化代碼zendoptimizer工具的使用使用優(yōu)化工具優(yōu)化代碼zendoptimizer工具的使用18頁面文件壓縮輸出Html頁面、JavaScript、CSS文件壓縮輸出使用Apache2的mod_deflate模塊頁面文件壓縮輸出Html頁面、JavaScript、CSS文19MySql緩存優(yōu)化配置使用動態(tài)緩存使用靜態(tài)緩存使用緩存工具eAccelerator、APC、Zendplatfor
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 終止物業(yè)合同范本
- 2024年工程專項(xiàng)承包協(xié)議稿
- 網(wǎng)咖合同范本
- 農(nóng)業(yè)循環(huán)經(jīng)濟(jì)(綠色飼料、養(yǎng)豬場及有機(jī)肥料廠)建設(shè)項(xiàng)目可行性研究報告書
- 2024年建筑材料供應(yīng)協(xié)議范本
- 網(wǎng)絡(luò)租機(jī)機(jī)房合同范本
- 2024外婆澎湖灣課件:推動家鄉(xiāng)發(fā)展
- 職業(yè)發(fā)展與就業(yè)指導(dǎo)2學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2024年常用帶司機(jī)汽車租賃協(xié)議格式
- 2024專業(yè)安置房交易協(xié)議模板
- 行政批復(fù)協(xié)議書范本
- 清理雜樹雜草施工方案范本
- 【語文】寧波市小學(xué)四年級上冊期中試卷
- 環(huán)保設(shè)施安全風(fēng)險評估報告
- MOOC創(chuàng)新創(chuàng)業(yè)與管理基礎(chǔ)(東南大學(xué))
- 【基于活動理論的信息技術(shù)課程教學(xué)研究8300字(論文)】
- 年產(chǎn)15萬噸PET的生產(chǎn)工藝設(shè)計-畢業(yè)論文
- 車間生產(chǎn)計劃完成情況統(tǒng)計表
- 品管圈(QCC)降低ICU護(hù)士床頭交接班缺陷率課件
- 《左道:中國宗教文化中的神與魔》讀書筆記模板
- 施工現(xiàn)場臨時用電安全技術(shù)規(guī)范
評論
0/150
提交評論