WordPress(AWS + Bitnami) – 移行作業(テーマ編)

WordPressの移行作業について記載しています。

今回は、テーマの移行です。

関連記事 - 「WordPressの構築・運用方法」

概要

WordPressを使用されている方はテーマをカスタマイズしたりしていると思います。
凝ったものを作られていると再現するのが大変になります。
今回はテーマの移行を行います。

手順のイメージ

こんな感じ

wordpress-file-move-image

手順をもう少し詳しく

WordPress – 移行作業(メディア(画像ファイル)編)と移動するファイルは異なりますが手順は同じです。

  • 旧WordpressサーバーにTeraTermなどでつなぐ
  • 旧Wordpressサーバーの該当ディレクトリを圧縮する
  • 旧WordpressサーバーにWinSCPでつなぐ
  • 旧Wordpressサーバー上のディレクトリを取り出し手元のPCに保存
  • 新WordpressサーバーにWinSCPなどでつなぐ
  • 新Wordpressサーバーに保存したディレクトリをUploadする
  • 新WordpressサーバーにTeraTermなどでつなぐ
  • 新Wordpressサーバーのデフォルトで入っているテーマの権限を確認する
  • 新Wordpressサーバー上のUploadしたディレクトリを解凍し上書きする
  • 新Wordpressサーバーのディレクトリの所有者と権限を変更する
  • 追加CSSを反映する

手順

旧WordpressサーバーにTeraTermなどでつなぐ

WordPressの使い方 – TeraTermで接続(AWS/Bitnami)参照。

ディレクトリ移動

cd /opt/bitnami/apps/wordpress/htdocs/wp-content
ls -l

こんな感じ

wordpress-old-server-connect-check

今回、メディア(アップロードした画像ファイル等)を移動するのでthemesが対象です。

旧Wordpressサーバーの該当ディレクトリを圧縮する

圧縮コマンド

tar zcvf themes.tar.gz themes

ずらっと出るけど慌てず待つ。
終わったら確認

ls -l

uploads.tar.gzが出来上がります。

wordpress-teraterm-themes-targz

旧WordpressサーバーにWinSCPでつなぐ

「WordPress(AWS/EC2/Bitnami) – WinSCPで接続」参照。

こんな感じ。themes.tar.gzがいますね。

wordpress-wiscp-themes-connectimage

旧Wordpressサーバー上のディレクトリを取り出し手元のPCに保存

themes.tar.gzを右クリック→ダウンロード→ダウンロード

wordpress-wiscp-themes-download

保存先は好きな場所を指定して[OK]を押す

wordpress-winscp-download-ok

ダウンロード中

wordpress-wiscp-themes-download-progress

とりあえず中身確認。PHPファイルが入ってるみたいですね。

wordpress-wiscp-themes-download-content-check

一番最初に設定されるtwentytwentyを開いてみます。css,php,jsonとweb系の開発者ならおなじみの面々ですね。少しこの辺を使って勉強されてもらうのもありかもしれません。

wordpress-wiscp-themes-download-content-twentytwenty

新WordpressサーバーにWinSCPなどでつなぐ

「WordPress(AWS/EC2/Bitnami) – WinSCPで接続」参照。

右側を以下の場所まで移動させます。
/opt/bitnami/apps/wordpress/htdocs/wp-content

wordpress-wiscp-themes-move

新Wordpressサーバーに保存したディレクトリをUploadする

themes.tar.gzを右クリック→アップロード→アップロード

wordpress-wiscp-themes-upload

[OK]を選択

wordpress-new-server-winscp-upload-dirsel

相変わらずダウンロードに比べて速いですね。

wordpress-wiscp-themes-upload-progress

新WordpressサーバーにTeraTermなどでつなぐ

WordPressの使い方 – TeraTermで接続(AWS/Bitnami)参照。

ディレクトリ移動

cd /opt/bitnami/apps/wordpress/htdocs/wp-content
ls -l

こんな感じ。ちゃんとthemes.tar.gzがいますね。

wordpress-teraterm-tar-themes

新Wordpressサーバーのデフォルトで入っているテーマの権限を確認する

※この手順は飛ばしても構いません。(参考情報としてご活用ください)

少し脱線しますが、適当な画像をブログにアップして所有者と権限を確認しておきます。
ブログにログインしてメディアの項目から適当な画像をアップします。

ディレクトリ パーミッション 所有者 グループ 補足説明
themes drwxrwxr-x bitnami daemon
themestwentytwenty drwxrwxr-x bitnami daemon
themestwentytwentyassets drwxrwxr-x bitnami daemon
themestwentytwenty404.php -rw-rw-r-- bitnami daemon

所有者とグループは全てbitnami:daemonで統一。
ディレクトリのパーミッションはdrwxrwxr-x
ファイルは-rw-rw-r--といったところです。

新Wordpressサーバー上のUploadしたディレクトリを解凍し上書きする

元のファイルを残しておきたい人はリネーム

cd /opt/bitnami/apps/wordpress/htdocs/wp-content
mv themes/ _themes/

いざ、解凍

tar -zxvf themes.tar.gz

圧縮ファイルがいらない人は

rm -f themes.tar.gz

リネームしたディレクトがいらない人は

sudo rm -rf _themes

新Wordpressサーバーのディレクトリの所有者と権限を変更する

この段階ではテーマを新しくインストールしようとすると失敗します。

wordpress-themes-install-failed

パーミッションの比較を以下に示します。ぶっちゃけ結構違います。

ディレクトリ パーミッション 所有者 グループ 補足説明
themes drwxrwxr-x bitnami daemon デフォルト
themes drwxr-xr-x bitnami bitnami 解凍
themestwentytwenty drwxrwxr-x bitnami daemon デフォルト
themestwentytwenty drwxr-xr-x bitnami daemon 解凍
themestwentytwentyassets drwxrwxr-x bitnami daemon デフォルト
themestwentytwentyassets drwxr-xr-x bitnami daemon 解凍
themestwentytwenty404.php -rw-rw-r-- bitnami daemon デフォルト
themestwentytwenty404.php -rw-r--r-- bitnami daemon 解凍

themesの所有者bitnami、グループをdaemonに変更する

cd /opt/bitnami/apps/wordpress/htdocs/wp-content
sudo chown bitnami:daemon themes
ls -l

最下層のファイル用の権限を設定する。

cd /opt/bitnami/apps/wordpress/htdocs/wp-content/themes
sudo chmod 664 -R *
ls -l

ディレクトリに書き込み権限と実行(移動)権限を追加する

cd /opt/bitnami/apps/wordpress/htdocs/wp-content/themes
sudo find . -type d -exec chmod 775 {} +
ls -l

追加CSSを反映する

なぜか追加CSSが移行されないので個別に反映します。

wordpress-themes-addcss-failed

WordPress→ダッシュボード→外観→CSS編集→コピー

wordpress-themes-addcss

新しいWordpressの同じ個所に貼り付け。

まとめ

ほんとにパーミッションが面倒。

おわり

コメントを残す

メールアドレスが公開されることはありません。