原创 Nginx通過ip和user_gent限制訪問

DDOS攻擊是大規模訪問站點經常會遇到的問題,它是指有人通過程序惡意刷站點的某些頁面,導致站點響應緩慢或者直接拒絕服務。 這種情況可以通過分析nginx的access日誌發現,存在大量相同ip或者user_agent的請求,我們可

原创 Promise對象的基本使用

promise對象用於將node.js中的異步函數串行執行,串行執行的情況可以分爲以下兩種情況: 串聯 使用then方法,每次返回promise對象或其他參數。 let startTime = Date.now(); functi

原创 chrome調試壓縮後的代碼

利用chrome的開發者工具對JavaScript代碼打斷點調試,是一種常用的前端調試方法。 但有時我們需要對壓縮後的JavaScript進行調試,因爲現在前端大多采用FIS或webpack進行壓縮,如果拿不到JavaScript

原创 獲取文件後綴名的幾種方式

PHP 使用strrpos,分割字符串 <?php function suffix($name){ $index = strrpos($name,"."); return substr($name,$index,s

原创 優雅的URL(僞靜態)

摘自Yii,說明文檔 apache # 設置文檔根目錄爲 "basic/web" DocumentRoot "path/to/basic/web" <Directory "path/to/basic/web"> # 開啓

原创 百度貼吧“神來一句”功能分析

最近需要爲論壇做一個類似百度貼吧的“神來一句”的功能,對其相關實現進行了分析,並給出自己的實現方式。 功能分析 神來一句可以理解爲一種快速回復帖子的途徑,用於可以直接發送表情圖片,也可以編輯其中的文字,然後再發送圖片。 經過分析可

原创 Node.js發送HTTP請求

在Node.js中發送HTTP請求,用的比較多的是request組件,該組件的功能非常強大,但是該組件需要通過回調函數的方式獲取操作的結果。 由於現在Node.js對ES6已經支持的比較好了,我們更希望request的結果能夠返回

原创 node.js中使用exports

node.js中可以使用module.exports和exports兩種方式導出模塊中的接口。 兩者的關係如下: exports = module.exports; exports是modle.export的引用,因此export

原创 ssh私鑰登錄

ssh支持多種登錄方式,比較常見的是通過用戶名&密碼和公私鑰對兩種方式。 通過用戶名和密碼登錄的方式比較簡單 spawn ssh -l root 192.168.1.11 等待提示輸入密碼即可。 生成公私鑰對 我們使用ssh-ke

原创 Slim中使用Controller

官方示例 Slim中給出的調用Controller的方法如下: $app->get('/home', '\HomeController:home'); 通過給出的示例可以看出,路由的第二個參數是具體Controller的命名空間和

原创 CSDN的Markdown編輯器用法

歡迎使用Markdown編輯器寫博客 本Markdown編輯器使用StackEdit修改而來,用它寫博客,將會帶來全新的體驗哦: Markdown和擴展Markdown簡潔的語法 代碼塊高亮 圖片鏈接和圖片上傳 LaTex數學公

原创 jQuery操作dom的一個實例

一個是開發中遇到的例子 <div class="b2r esb" id="e_adv_s3"> <p> <a href="javascript:;">超鏈接A</a> <a href="javascript:;">超鏈接B</a>

原创 異步方法的串行執行

eventeimter 用於簡單處理兩個事件的串行執行,在事件A執行完成之後,執行函數B。 const events = require('events'); const fs = require('fs'); const emi

原创 SSH連接VMware中NAT模式主機

VMware端口轉發 本地主機: 10.220.160.11 VMware虛擬機: 192.168.76.128 將10.220.160.11:9876轉發至192.168.76.128:22 編輯 / 虛擬網絡編輯器 SSH連

原创 抽獎系統的設計

抽獎模塊設計 思路 管理員在後臺設置獎品的中獎概率,未中獎概率 = 1-中獎概率之和。 僞隨機數生成函數用於生成0-1之間的隨機數,參考了官方手冊中mt_getrandmax示例。 http://php.net/manual/