熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> MySQL >> 正文

nginx防止sql注入

2013-11-23 21:04:22  來源: MySQL 

  防止sql注入最好的辦法是對於提交後台的所有數據都進行過濾轉義

  對於簡單的情況比如包含單引號 分號; < > 等字符可通過rewrite直接重訂向到頁面來避免

  用rewrite有個前提需要知道一般用rewrite進行正則匹配只能匹配到網頁的URI也就是url中?前部分?以後部分是請求參數

  問號後面的請求參數在nginx用$query_string表 示不能在rewrite中匹配到需要用if判斷

  例如對於參數中帶有單引號的進行匹配然後定向到錯誤頁面

  /plus/listphp?tid=&mid=

  rewrite ^*([;<>])* /errorhtml break;

  直接寫這樣的一條重寫肯定不會正確匹配因為rewrite參數只會匹配請求的uri也就是/plus/listphp部分

  需要使用$query_string 借助if進行判斷如果查詢串種包含特殊字符返回

  if ( $query_string ~* "*[;<>]*" ){

  return ;

  }


From:http://tw.wingwit.com/Article/program/MySQL/201311/29532.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.