投票系統的三兩事
最近因為某些案子 做了一個簡易的投票系統
恩~~
技術上來說 要做到投票功能十分簡單,就算不使用外面網站提供的,也可以輕鬆完成。
畢竟技術上來說 只需要兩個頁面就可以完成(如果要增加 驗證碼 再多一個吧~)
但是……最恐怖的是什麼?
就是 有心人士的bot 攻擊……
那個網站 在開放投票後…一天內就遭到 bot 攻擊…在搶下一萬多張票後 系統就bye了~~
memory被吃光光……除了重開機 無解…
為了這個 我們增加了防火牆、放棄了apache 、增加了驗證碼功能、IP檢察功能
為此 我連續好幾天 熬夜和bot 拼命….也找了朋友幫忙…
然而 投票的最後一天…..BOT 大軍又來了!!!!
當然 驗證碼防禦下,我成功擋下了大多數的攻擊
不過 拖垮 硬體 還是有發生(應該是 驗證碼所消耗的空間,因為要自動生圖出來)
最痛苦的其實是…..
因為還是有廠商 票數異常增高
也的確有灌票嫌疑
但是……該做的都做了 不然你想怎樣(翻桌)
你能破解驗證碼,你能一直換IP….
那我還真的沒轍
這都不是重點
某位大頭抗議,要我們解決 不然就去政風處抗議…..
下次 改用 身分證認證好了,還是要 電話認證?
真她ㄋㄋ的
紀錄上 我至少擋下了兩萬張票的攻擊
在wordPress中放php
檔案備分的好物~~lftp的 mirror功能
最近因為案子關係,在研究如何讓網站伺服器的資料和另一台備援機同步化
達到 在網站備攻擊癱瘓的時候可以馬上重啟
首先 我這部份的同步化,並沒有達到 零時差同步,指要求每週一次就可以了
這次 我使用的是lftp 這是FTP的 客戶端 軟體 我們要使用的是他的 mirror 指令
以下教學參考自
http://superstanwu.blog.ithome.com.tw/post/775/29721
http://www.thelinuxblog.com/linux-man-pages/1/lftp
1. 安裝lftp
Debain、UBuntu:#sudo apt-get install lftp
Fedora、CentOS:#yum install lftp
2. 確認語系
#locale
3.用vim 或是其他文字編輯器 開啟backup.lftp
open [主機位置]
user [帳號] [密碼]
cd /Hosts/stanserv.com/i (在 FTP上 面的路徑)
mirror -R –only-newer –only-missing –parallel=2 [要備份的本地端目錄]
(想要多個資料夾 就在這邊增加)
exit
4. 執行
#lftp -f backup.lftp
5.完成 之後你可以用crontab -e 設定排程
參數說明 (不負責翻譯,有任何問題,請參考上面第二個參考網址)
參數 | 更詳細的參數 | 說明 |
-c | –continue | 續傳 |
-e | –delete | 遠端沒有的就刪除 |
–delete-first | 在傳輸新的前,先把舊的刪除 | |
-s | –allow-suid | 根據遠端設定suid |
–allow-chown | 設定擋案的所有者和群組 | |
–ignore-time | 比對時忽略時間 | |
–ignore-size | 比對時忽略大小 | |
–only-missing | 沒有的檔案就下載 | |
-n | –only-newer | 下載較新的 |
-r | –no-recursion | 忽略子目錄 |
–no-symlinks | 不創造symbolic links | |
-p | –no-perms | 不設定權限 |
–no-umask | 不使用 umask | |
-R | –revers | 反轉 ,就是指 本地和遠端的身分反轉,下載變上傳,備分到遠端 |
-L | –defference | 下載 symbolic links |
-N | –newer-then=[SPEC] | 下載比指定時間新的檔案 |
–order-then=[SPEC] | 下載比指定時間舊的檔案 | |
–size-range=[RANGE] | 下載在指定檔案大小範圍內的檔案 | |
-P | –parrel=[N] | N條線程 |
–use-pget[-n=N] | 用pget來傳輸每個檔案 | |
–loop | 重複 直到找到改變 |
後面看不懂 就不翻譯了
碩士班推甄~~一切都結束了
Fedora軟體安裝指令yum
最近又摸了一套Linux陣營的OS : Fedora (每個老師用的OS 都不太一樣阿XD)
因為要安裝新的軟體
所以就開始摸索Fedora的安裝指令
說實在的……為何每套Linux在安裝軟體的方式都不太一樣呢?
不管了 進入正題
參考網址 :http://jerome.anyday.com.tw/archives/47 http://www.cnitblog.com/guopingleee/archive/2009/11/24/62791.html
Fedora的 安裝指應是 yum [參數] [軟體名稱]
yum update
更新套件, ex: yum update httpd,如果只有 yum update ,會更新所有已經安裝的套件。yum search
搜尋套件,ex: yum search httpd*,會搜尋所有跟 httpd 有關的套件。yum install
安裝套件,這裡的套件安裝,會考慮到相依性的問題。 ex: yum install httpdyum remove
移除套件,這裡的套件移除,也會考慮到相依性的問題。 ex: yum remove httpdyum clean
清除安裝時下載的暫存套件原始檔案,位於 /var/cache/yum,因為這裡可以清除的項目很多,我最常用的是 yum clean all ,一次給他清掉 :pyum list
列出套件名稱,用法常用有分以下幾種:
yum list updates
列出所有可以更新的套件yum list installed
列出所有已安裝的套件
依照測試使用的經驗
這個指令十分方便
不論是軟體 還是 plug-in都可以輕鬆安裝
如果名稱大小寫打錯,還會告訴你
另外在指令後面放軟體名稱時,還可以一次放多個 讓他一起跑
十分方便
Ubuntu的壓縮指令測試與教學
本篇文章參考資料
http://linux.vbird.org/linux_basic/0240tarcompress.php\
http://blog.bs2.to/post/EdwardLee/4997
壓縮指令的部分 餐搞第一個鳥歌教學,但是我以理解過後較白化的說明方式,想要看詳細的自己點進去吧
最近剛好接了幾個跟備份有關的cass
所以就開始研究,一些linux 相關的壓縮指令,和其中的差別
WordPress訪客統計-StatPress(中文化)
本篇文章 參考http://steachs.com/archives/194
架設一個網站的目的除了替自己保留紀錄外,就是與他人分享,而要如何知道有多少人看了呢?
就是要做 流量的統計,流量統計最簡單 最原始的方式就是用 訪客計數器 這種東西
只是這種東西只有簡單的數字,無法給你更多訊息
今天教的這個則是相當厲害的 流量統計,他會分析每一位訪客 的IP、從哪個頁面來、看了那些頁面、他搜尋那些關鍵字、哪一套作業系統、哪個瀏覽器 都一清二楚(基本上他只是分析 apache的 log 然後寫入SQL中)
這樣你就可以知道 你哪些文章受歡迎、哪些文章…..
OK 廢話不多說
plug-in 名稱 statPtess 你可以用wordpress 提供的線上安裝功能安裝,也可以用我下面的載點安裝
這是經過我翻譯後 外加 修正一些不方便的地方
安裝方式:
1.檔案解壓縮後,整個資料夾上傳至wp-content / plugins 下
2.進入後台->外掛 安裝他
詳細使用方式 就參考我提供的參考網址吧!
PS.本外掛因為會記錄每一筆資料,所以SQL 需求較大,請在設定中自己選擇資料保留的時間場短…..
欣亞出爾反爾退款龜速
本篇文章 是我網購的經驗
一切事情 純屬事實 絕無偽造
前幾天(11/29),我在 欣亞 網站上買了一個展示機的螢幕
使用ATM轉帳
為了 能盡早拿到貨,我在下單後兩小時內付款完成
隔天(11/30)
我收到了一通電話,那螢幕~~~壞了不能出貨
問我是要 退款 還是 換另一個
經過思考 我選擇退款
並且在當晚 通知客服 並留下資料
客服說明天會處理
恩~~~隔天(12/1) 我在去在網路上留言詢問進度
客服來信回覆說 明天(12/2)退款
就在今天(12/2) 我收到了一封簡訊…..我要等到12/5 才能收到….
幹~~~~
轉個帳很難嗎?
不管是臨櫃轉帳還是atm轉帳,都不用10分鐘
欣亞 你竟然可以一拖再拖
因此 十分不爽的我就打電話去客服
對方竟然跟我說 照慣例 他們只會在 周一 周二做退款作業
然後 承辦人員下班了,無法替我詢問
我收到一張下班卡了………………
我嚴重懷疑 承辦人員是在下班前傳簡訊告知的…..
阿幹~~如果 只有每周一二才會退款 可以說阿~~ 如果沒錢退 可以說阿~~
你們這種一拖再拖的回覆方式
我真不知道12/5 是否真的能拿到錢
還是 在一通 12/10 會退款的通知
Ubuntu 修改時區
本篇文章參考自 http://philipatswarchy.wordpress.com/2007/03/19/ubuntu-change-time-zone/
在弄台東伴手禮的網站的 訪客統計的時候發現
怎麼間跑到明天去了!!!!
等等 不太對阿
台灣已經是 +8 了 再+8 是怎麼回事,最多不是+12嗎?
大概是裝OS 的時候 時間對時出現問題了….
解決方法:
- #sudo tzselect 轉成root後可以捨去sudo
- #5 選擇Asia
- #43 選擇Taiwan,終於有國家名稱了 感動,以前都是 taipei的…
- #sudo ntpdate time.stdtime.gov.tw 更新時間
這樣就可以了
其他定期更新 什麼的 就不重要了
WordPress 定期備份
wordpress 跟大部分網站一樣,分成MYSQL 資料庫 和檔案兩個部分
要讓網站快速轉移,只需要把這兩個部分 完整複製 就OK了
備份 當然也是
檔案的部分
這部分十分容易,用ftp 把整個網站下載下來就OK了
這次來說 SQL的部分
SQL備份有兩個方法
- 用phpMyAdmin 把整個資料庫匯出(你夠厲害用ssh 進去下指令也OK啦)
- 利用 wordpress 的 plug-in
現在 說明第二種方法
此資料 參考http://briian.com/?p=1655
軟體名稱:WordPress Database Backup
軟體版本:2.2.2
軟體語言:中文
官方網站:http://www.ilfilosofo.com/blog/wp-db-backup檔案下載:按這裡(主程式)
備註說明:此程式為WordPress網站系統專用外掛。
把檔案下載下來後,把這些'檔案上傳到/wp-content/plugins 資料夾內
再到網站上的外掛中開啟
詳細的設定 就不多做說明,介面看不懂得起參考 參考網址
他可以定期備份,也可以mail 到你的信箱中
復原的方法…..用phpMyAdmin 的匯入功能就OK了