909
技術社區[雲棲]
淺談Windows係統下的網站備份與恢複

之前寫了利用命令行工具創建LinuxMac係統下網站備份的文章,但是windows係統無法采用命令行工具進行網站備份,這個時候我們就需要借助第三方工具了。欲知詳情,且看下文介紹。
目前仍有很多網站運營商沒有做好備份工作,一旦網站突然“罷工”或遭到病毒感染,一切數據、資源、心血都將付諸東流。
一、前期準備
有的網站托管商會提供備份服務,當然你也可以購買一些附加的備份服務和插件。但本文的寫作前提是你的網站托管商不提供備份服務,我們自己通過免費的軟件進行網站備份。
首先,準備以下三個工具:
這是一個能夠訪問網站文件的開源FTP客戶端。
2.Adminer
一款管理數據庫的簡便安全的工具。
3.網站的FTP登錄憑據 (含獲取網站FTP憑據具體攻略)
- 可以在主機賬戶中找到
- 需要一個用戶名、密碼以及主機名或IP地址
在你自己的電腦上安裝Filezilla(與Windows、Linux、Mac係統兼容),從Adminer網站下載PHP文件,確認已經獲得FTP主機名、用戶名與密碼。
注意:雖然Filezilla是一個非常好用的跨係統FTP客戶端,但它不會安全地存儲用戶密碼,因此使用時不要選擇“記住密碼”。的確,每次登錄都輸一遍密碼很麻煩,但是出於安全考慮,這樣的捷徑還是不要走。
二、開始備份
你的網站存有大量網站文件以及一個或多個數據庫(通常隻有一個)。
這些文件包括你的核心CMS(內容管理係統)、擴展名/主題文件以及你上傳到該網站的所有照片/媒體。
數據庫指的是網站內容(如博客文章)及設置(擴展/主題設置和用戶信息)的存儲位置。
因此我們完成完整備份的標誌就是備份網站文件與數據庫。
1. 文件
打開Filezilla。
首先在File(文件)菜單中點擊Site Manager(網站管理員)按鈕。打開後在這裏輸入你從主機賬戶抓取的FTP登錄憑據:
通常情況下,常規的FTP即可。雖然SFTP和TLS相對來說更加安全,而且有時使用的協議需要根據托管服務供應商或具體服務器來確定。
友情提醒:FTP默認使用21號端口,SFTP默認使用22號端口。有時你要把你的FTP登錄憑據設置得沒有規律性一點才能保證它們正常工作。如果在設置方麵存在困難,可以與你的托管商溝通,獲得他們的協助。
OK,成功登錄。
該麵板左側是本地計算機中的文件,右邊的則是服務器上的網站文件。基本上我們隻需將服務器上的文件拖到本地計算機上即可。可以放心的是,服務器上的文件仍會保留,不會被刪除。
首先,找到你網站的public根目錄(在這種情況下是public,也有可能是public_html、httpdocs等),點擊並將其拖動到你電腦上的某個文件夾。
友情提醒:如果你的網站使用了緩存插件,在備份網站之前清除緩存。這些文件應該是定期刪除的,但如果你的緩存文件是從2011年開始的,那麼這一步操作能幫你節省很多備份的時間。
這裏介紹一個我每周備份的命名小技巧(非常重要):
好用的備份命名技巧
現在開始文件傳輸。這個過程會花一點時間,特別是如果你的網站上有很多照片或插件,又或者你的網站運行在一個速度很慢很low的服務器上。
傳輸完成後Filezilla一般都會發出自動通知。如果沒有,程序底部的文件傳輸列會顯示空白,說明你發出的文件傳輸指令已經完成。
第一階段完成!
2. 數據庫
現在我們開始備份數據庫。首先,把你之前下載的那個adminer.php文件拖到你網站的根目錄下,如下圖所示:
友情提醒:完成這一步後一定要刪除服務器上的adminer.php文件。最好不要把這些暫時用不到的工具遺留下來,容易產生安全隱患。
現在請打開瀏覽器並輸入yourwebsite.com/adminer.php,你應該會看到下圖的頁麵:
登錄數據庫。如果你不知道你的數據庫登錄憑據,可以在Filezilla的服務器上打開網站配置文件:WordPress上的是wpconfig.php、Joomla上的是configuration.php、Drupal上的是settings.php。右擊文件並用文本編輯器打開,我們就可以在上麵找到登錄信息。
以WordPress中的 wpconfig.php存儲數據庫登錄憑證為例
將憑據輸入Adminer後登錄成功並顯示如下頁麵:
現在我們要做的是將數據庫以單個文件的形式導出,並下載到自己電腦上。點擊左側的“Export”(導出)按鈕,頁麵上會跳出一個數據庫的轉儲麵板:
選擇“Save”並單擊底部的“Export”按鈕,頁麵上會出現下載提示。把這個文件保存在與網站文件相同的存儲位置。通常情況下這個過程幾分鍾就可以完成。
但有些網站的數據庫龐大,所需的備份時間就會更長。有時還會出現服務器超時的情況,雖然比較少見,但是如果真的發生了,建議從主機賬戶直接下載數據庫副本。
完成到這裏就可以說你已經無敵了。不管什麼係統都難不倒你。既然學會了備份,那就一定要把備份工作變成你的日常習慣——至少每周一次。
三、備份安全
下麵我們將介紹保護備份安全的重要性。
備份是為了防止意外,但是如果備份的東西沒有得到安全保護,那麼關鍵時刻我們還是會功虧一簣。因此必須將備份文件存儲在安全的位置,並采取一定的措施防止無關人員訪問或被惡意人員利用造成網站被入侵。這些備份中包含著很多重要信息。比如網站配置文件就是數據庫的訪問入口。
舊的備份中還包含著大量沒有更新過的核心文件、主題和擴展名。不再更新的軟件往往是網站遭受攻擊的罪魁禍首!我發現很多網站都會把他們的備份存儲在活動服務器的/old以及/backup目錄下。這種做法等於把你的網站拱手讓給了那些哪怕是“修為”很低的攻擊者。
把備份放在本地計算機、外接硬盤或CD/DVD上都是相對來說更加安全的選擇。另外我們也建議對備份數據進行密碼保護,防止這些數據被濫用或被無關人員獲取訪問權限。至於如何加密還是取決於你所使用的操作係統。
四、如果我的網站被入侵了怎麼辦?
當用於管理網站的計算機感染惡意軟件時,該網站也會受到威脅。鍵盤記錄器、木馬和其他惡意軟件都可以盜取FTP憑據或訪問存儲在計算機上的網站備份。無論你使用的是什麼操作係統,請務必使用合適的防病毒程序掃描計算機中的惡意軟件。
你可能會擔心,如果網站被入侵了,並且用自己的電腦來存儲備份文件,那麼你把惡意軟件下載到自己電腦上的可能性就很大了。這個擔心是合理的。但是,大多入侵網站的惡意軟件都是PHP格式,或者是用其它服務器端的腳本語言編寫的,一般與web服務器兼容,而不會在桌麵、筆記本、平板等設備上執行。
盡管如此,我們還是需要對網站進行有效的安全監控,及時阻止入侵行為。
如果你下載了受感染的備份文件,一個好的反病毒軟件也能救你一命。通過反病毒軟件對計算機進行全麵徹底的病毒掃描往往能發現係統中的威脅文件,當然也包括受感染的備份文件。
五、如何恢複備份
假設由於某些更新、配置錯誤或不兼容的軟件,你的網站被黑或出現白屏問題(內部服務器錯誤),那麼我們就需要恢複以前備份的東西。
1. 恢複文件
假設我已經在本地計算機上存儲了網站備份文件,文件恢複工作其實也相當簡單,就是把我們之前的備份步驟逆向操作一遍。首先,將需要恢複的備份文件拖到網站的public根目錄下。
這時頁麵會跳出你希望Filezilla對這些傳輸文件執行什麼操作的提示框。因為我們需要這些本地文件替換服務器上的文件,因此選擇“Overwrite(覆蓋)”以及“ Always use this Action(始終執行此操作)”、“ Apply to Current Queue Only(應用於當前文件)”。
2. 恢複數據庫
重新登錄Adminer並將adminer.php文件重新上傳到服務器(因為之前完成工作後你已經把這個文件刪除了對吧)。
本文作者:Carrie_spinfo
來源:51CTO
最後更新:2017-11-02 17:04:49