如何實(shí)現(xiàn)Zen Cart文件同步、實(shí)時(shí)備份網(wǎng)站文件?
通過實(shí)現(xiàn)兩臺(tái)服務(wù)器間的Zen Cart網(wǎng)站文件的同步,可以遠(yuǎn)程即時(shí)備份網(wǎng)站的所有文件。這樣如果主 機(jī)出現(xiàn)故障,或者主機(jī)帳號被封,都能迅速切換Zen Cart網(wǎng)店到新的服務(wù)器上。(關(guān)于數(shù)據(jù)庫實(shí)時(shí)備份,見貼子:如何實(shí)現(xiàn) Zen Cart 數(shù)據(jù)庫鏡像 / 實(shí)時(shí)備份MySQL數(shù)據(jù)庫 )
在Linux上,遠(yuǎn)程文件同步通過 rsync 實(shí)現(xiàn),目前多數(shù)Linux上都已經(jīng)安裝了rsync。由于rsync僅復(fù)制修改過的文件,因此能最大限度的減少需要同步的文件。宇塵網(wǎng)絡(luò)幫助中心域名知識(shí)|虛擬主機(jī)知識(shí)|VPS主機(jī)知識(shí)|服務(wù)器知識(shí)|網(wǎng)站建設(shè)知識(shí)|網(wǎng)絡(luò)推廣
由于rsync同步時(shí),每次都需要用戶輸入遠(yuǎn)程服務(wù)器的密碼,因此如果希望通過腳本定時(shí)同步Zen Cart網(wǎng)店文件的話,需要使用證書登錄。下面是生成證書的步驟:仿牌空間、香港月付空間、韓國月付空間、日本月付空間、荷蘭VPS、香港VPS
首先在需要執(zhí)行 rsync 命令的A主機(jī)上,生成 RSA 密鑰:
$ ssh-keygen -t rsa
提示輸入 passphrase時(shí),直接按兩次回車健使用默認(rèn)值。生成的兩個(gè)密鑰:公密鑰、私密鑰都保存在 ~/.ssh/,其中 ~/.ssh/id_rsa.pub 是公密鑰。
將公密鑰 id_rsa.pub 文件通過FTP或SCP拷貝到遠(yuǎn)程B主機(jī)上。
在遠(yuǎn)程B主機(jī)上,以執(zhí)行 rsync 時(shí)的用戶名登錄,復(fù)制 id_rsa.pub 的內(nèi)容到 ~/.ssh/authorized_keys:
$ cat id_rsa.pub >>~/.ssh/authorized_keys
$ chmod 700 ~/.ssh/authorized_keys
美國月付空間、月付美國空間、美國VPS、美國服務(wù)器租用
現(xiàn)在從A主機(jī)通過rsync或者SSH到B主機(jī)傳遞文件,就不會(huì)再提問密碼了。
接著就可以使用 rsync 來同步A主機(jī)和B主機(jī)的文件夾。在A主機(jī)上執(zhí)行命令:
$ rsync -vaz root@0.0.0.0:/var/www/public_html/ /home/jack/zencart/
就能將遠(yuǎn)程服務(wù)器0.0.0.0上的目錄/var/www/public_html/中的Zen Cart網(wǎng)店的所有文件同步到本地目錄 /home/jack/zencart/ 中。
將上面的rsync命令放到cron中定時(shí)執(zhí)行,例如每10分鐘執(zhí)行一次。就能實(shí)現(xiàn)兩臺(tái)服務(wù)器之間的數(shù)據(jù)同步、備份了。
更多技術(shù)知識(shí),更多網(wǎng)絡(luò)服務(wù),盡在宇塵網(wǎng)絡(luò)。我們的成長,離不開你們的支持,宇塵網(wǎng)絡(luò),歡迎您的訪問。