WordPressをローカル環境から対外サーバへコピーする
通常仕事でホームページを作成するときローカル環境で作成し、最終的にレンタルサーバなどに公開する流れになると思います。
その際、WordPressの設定をローカルと対外サーバを同じように手動で設定するのはめんどくさいし、漏れが発生する可能性があります。
そこでファイルもデータベースも丸ごとコピーするやり方をメモ。
手順としては、
1.ファイルのコピー
2.データベースのコピー
3.wp-config.phpの編集
となります。
動作確認環境
実際動作確認した環境
ローカル側:WindowsにXAMPPをインストール
Webサーバ:さくらインターネット or Xserverの通常のレンタルサーバプラン
1.データのコピー
そのまんまコピー。
WordPressをインストールしたフォルダを含めて、ローカルで作業していたファイルをftpで丸ごとコピーする。
例)
ローカル作業フォルダが c:\xampp\test (c:\xampp\test\wordpressにWordPressをインストール)なら、それ以下をWebサーバのルートへ丸ごとコピー
2.データベースのコピー
次の流れでデータベースのコピーを行います。
1.ローカルのデータベースをエクスポート
2.エクスポートしたデータを編集
3.Webサーバ上のデータベースへインポート
2.1.ローカルのデータベースをエクスポート
ローカル環境でphpmyadminを開く(xampメニューにリンクあり)。
WordPressインストール時に指定したデータベースを開き(画像では「wordpress」)、テーブル接頭語(画像では「wp_base」)から始まるテーブルにチェックを入れてエクスポートを選択。
以下はWordPressインストールの時の画面。
エクスポートを選択したらデフォルトの設定のまま「実行」する。
エクスポートされたファイルが保存されます。
2.2.エクスポートしたデータを編集
エクスポートした xxx.sql ファイルをテキストエディタで開き下記の変更を行う。
・「CREATE DATABASE IF NOT~」という行を削除。
・直後の「USE ’データベース名’」を実際のWebサーバで作成したWordPress用のデータベース名に変更する。
・ローカル環境のurlを実際のurlに置換
例)http://test → http://www.xxxx.co.jp
大量にあるが全て置換する。
編集が終わったらファイルを保存します。
ContactForm7 を使っている場合の注意事項
内容:
contactform7の登録内容にインポート時に文字列変換される文字列があると失敗した。(登録内容が空白になった)
(DBに文字列サイズチェック用のデータが入ってる?)
例)送信メールの内容
このメールは http://test から送信されました
2.3.Webサーバ上のデータベースへインポート
実際のWebサーバのphpmyadminを開きます。
※たいていはレンタルサーバの管理画面からログインできるようになっていると思いますが、場合によってはphpmyadminを標準サポートしていないところもあるようです。
「インポート」-「参照」で先ほど編集したファイルを選択し「実行する」を選択すればデータベースのコピーが完了です。設定はデフォルトのままでいいかな。
3.wp-config.phpの編集
最後にWebサーバ上のWordPressの設定ファイル wp-config.php の変更を行います。
WordPressインストールフォルダ/ にあるwp-config.phpをテキストエディタで開きます。
下記のdefineの第2引数の部分をWebサーバ上でデータベースを作成した際に設定した情報に変更します。
// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define('DB_NAME', 'wordpress');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'root');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'xxxxx');
/** MySQL のホスト名 */
define('DB_HOST', 'localhost');
上書き保存で完了です。
設定がよくわからない場合は、一旦レンタルサーバの管理ページからWordPressをインストールしてみてそこからwp-config.phpをとってくる方法もありかもです。
実際サイトを開いてみて問題なければ成功です。
まとめ
再度コピーする際は、Webサーバ上のデータベーステーブルは一旦削除すれば同様の手順で可能です。
逆にWebサーバ上からローカルにコピーする際も同様の流れでできます。
また、ホームページ公開後に作業する場合は、キチンとバックアップをとってすぐもとに戻せるようにした状態にして慎重に作業しましょう。
なにかあっても責任は負いかねます・・・
-
サーバ
関連記事
-
-
さくらインターネットで運用しているメールアカウントでメールをスマートフォンへ転送 …
-
-
ローカル環境にXAMPPをインストールすることでローカルでWordPressを動 …
-
-
申し込みページに住所等の個人情報を入力する場合は、情報流出を防ぐためSSLを導入 …
-
-
XAMPPをインストールすることでWordPressの動作環境が簡単に構築できま …
-
-
データバックアップ用にNASを導入しました。 いろいろ調べてコストパフォーマンス …
-
-
以前、「ローカル環境にWordPressの動く環境を構築する」、「ローカル環境に …
-
-
ちょっと前に仕事で納めたホームページが急に見れなくなりました。 「このウェブペー …
-
-
WordPressでオリジナルのテンプレートを作るときはローカル環境で作業するの …