備份意義
- 如果線上發生意外,我都可以立即在另一地方復原。
- 本地發文的速度比線上快很多,有時如果線上不行,那先發表在本地。
- 如果我想嘗試某個插件或主題,我會先在本地測試。
- 本地能跑起來一個同樣的網站,才說明備份是正確可行的。
備份過程簡介
- 在本地安裝新的wordpress,再覆蓋備份數據庫
- 配置apache,以使本地可以正常訪問
備份過程詳解
- 準備好備份目標:在用插件及主題,wordpress主程式,導出的sql。
- 安裝最新版本的apache+php+mysql。
- 將新的wordpress安裝在某處,把準備好的主題和插件放進去。
- 將導出的sql直接灌進新的數據庫,數據庫要注意首先替換掉表前綴以及域名。
- 進入/etc/apache2/sites-available/,將000-default.conf複製為bbc.ejsoon.win.conf,內容改成:
<VirtualHost *:80> ServerAdmin ejsoon@localhost ServerName bbc.ejsoon.win DocumentRoot /var/www/bbcci/ ErrorLog ${APACHE_LOG_DIR}/bbc.ejsoon.win.error.log CustomLog ${APACHE_LOG_DIR}/bbc.ejsoon.win.access.log combined </VirtualHost>
- 激活新站點:
sudo a2ensite bbc.ejsoon.win
- 重啟apache:
sudo /etc/init.d/apache2 restart
- 改/etc/hosts,加一行:
127.0.0.1 bbc.ejsoon.win
- 在wordpress根目錄加上.htaccess文件,其內容是:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
- 更改apache設置,使其支持.htaccess。來到/etc/apache2/apache2.conf,將其設置更改為AllowOverride All
- 啟用apache的重寫功能:
sudo a2enmod rewrite
- 重啟apache:
sudo /etc/init.d/apache2 restart
以上就是備份wordpress網站的全過程。
然而還有個問題,就是,它的右側欄是無法備份的,在新的網站上只能重做。原因未知。