2015年9月22日 星期二

WordPress Crash After Change IP Address

WordPress Crash After Change IP Address


簡述

一般不會有這樣的問題, 因為大部份正式的 WordPress 站台都會使用 domain name 來當站台的網址而不是使用 IP address。但對於使用 IP address 當網址的 WordPress 站台, 一旦 IP address 有所變動, 那 WordPress 站台鐵定掛點。
本文列出一些資料修正的方法, 主要是更改 WordPress 資料庫中網址的欄位, 讓 WordPress 站台能夠重新站起來。

處理步驟

Case 1: 單一獨立 WordPress 站台

1. 備份站台資料庫並登入 MySQL 準備修改內容:
$ sudo mysqldump -uUser -pPassword myWPDB > myWPDB.sql
$ mysql -uUser -pPassword
mysql> use myWPDB

2. 檢查目前的資料, 確認要如何修改:
mysql> SELECT * FROM wp_options WHERE option_name IN ('siteurl','home');
# 輸出結果類似以下內容
+-----------+-------------+---------------------+----------+
| option_id | option_name | option_value        | autoload |
+-----------+-------------+---------------------+----------+
|         2 | home        | http://1.123.111.55 | yes      |
|         1 | siteurl     | http://1.123.111.55 | yes      |
+-----------+-------------+---------------------+----------+
要把其中 IP address 的部份改為新的 IP address; 其他如 http:// 或是若有子目錄的部份全都要保留下來。

3. 確認好新的 option_value 後, 執行以下指令更改資料:
mysql> UPDATE wp_options SET option_value = '新值' WHERE option_name IN ('siteurl','home');

Case 2: WordPress MU 網誌網路

1. 先使用 Case 1 的方法更改所有子網誌的內容
子網誌資料表的名稱為 wp_x_options, 例如 wp_2_options, wp_3_options.

2. 檢查以下兩個網誌網路的資料表, 確認要如何修改:
mysql> SELECT * FROM wp_site;
mysql> SELECT * FROM wp_blogs;
3. 執行以下指令修改 IP 位址:
mysql> UPDATE wp_site SET domain = '新的網址';
mysql> UPDATE wp_blogs SET domain = '新的網址';
4. WordPress MU 的 wp-config.php 設定檔裡會多一個設定值要修改:
$ sudo vi wordpress-網頁根目錄/wp-config.php
修改以下定義
define('DOMAIN_CURRENT_SITE', '新的網址');
-- valid for WordPress 4.3.1

沒有留言:

張貼留言