前回、Webサーバーの設定まで終了したので、WordPress をインストールして、このサイトのミラーサイトにしておこうと思っています
まずはWordPress を動作させるに、PHP と MySql をインストールしますが、以前とそれほど変わらないと思っています。
WordPress インストール
PHP 、MariaDB、WordPress とインストールしていきます
PHP7.3 のインストール
centOS8 のデフォルトは、PHP7.2なので、remiレポジトリを導入しPHP7,3をインストール
# dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm # dnf module disable php # dnf module install -y php:remi-7.3 # php -v
php-fpmの起動
# cp -p /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.org # vi /etc/php-fpm.d/www.conf ・ ・ listen.owner = apache listen.group = apache listen.mode = 0666 # systemctl start php-fpm # systemctl enable php-fpm # systemctl is-enabled php-fpm enabled
PHP 基本的な設定
# cp -p /etc/php.ini /etc/php.ini.org # vi /etc/php.ini expose_php = Off post_max_size = 80M upload_max_filesize = 80M date.timezone = "Asia/Tokyo" mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = UTF-8 mbstring.http_output = pass mbstring.encoding_translation = On mbstring.substitute_character = none $ php -r 'phpinfo();' | grep 'PHP Version' PHP Version => 7.3.15
MariaDB 10 のインストール
$ dnf list | grep maria
centOS8 になり、デフォルトで「MariaDB 10」が導入されているので、そのままインストール
# dnf install -y mariadb-server mariadb mariadb-devel 完了しました! # systemctl restart mariadb # systemctl status mariadb # systemctl enable mariadb
mysql_secure_installationの実行
管理者パスワードは、事前に決めてメモしておく
★管理者パスワード : hogehoge_passwd
このパスワードは、mysql コマンドで「root」ユーザーのパスワード となる
$ sudo mysql_secure_installation ・ Set root password? [Y/n] y <--------------- 管理者パスワード Remove anonymous users? [Y/n] y <--------- 匿名ユーザー削除 Disallow root login remotely? [Y/n] y <----- リモート管理者ログイン拒否 Remove test database and access to it? [Y/n] y <---- test データベース削除 Thanks for using MariaDB!
文字コードの設定
# cp -p /etc/my.cnf.d/mariadb-server.cnf /etc/my.cnf.d/mariadb-server.cnf.org # vi mariadb-server.cnf ・ ・ [mariadb] <------ 追加 character-set-server = utf8mb4 [client-mariadb] <------ 追加 default-character-set = utf8mb4 # systemctl start mariadb # systemctl status mariadb
データベースにアクセスし、確認
$ mysql -uroot -p「★管理者パスワード」
MariaDB [(none)]> show variables like "chara%"; +--------------------------+------------------------------+ | Variable_name | Value | +--------------------------+------------------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mariadb/charsets/ | +--------------------------+------------------------------+ MariaDB [(none)]> quit Bye
WordPress インストール
centOS7時の記事を参考に、インストール
バックアップ
とりあえず、WordPress は動作したと思うので、本サーバーのバックアップをしていきます、
WordPress データベースのバックアップ
本サーバー側で作業していきます
まずは、バックアップを保存するディレクトリを作成し、データベースをバックアップ。データバースの、ユーザ名、ホスト名、パスワードは事前に明確にしておきます
- データベース名 | WpDb
- ユーザー名 | WpAdmin
- パスワード | WpPasswd
- データベースのホスト名 | localhost
「mysqldump」でバックアップ
・バックアップ作業用ディレクトリを作成
・本サーバーでデータベースをすべてバックアップ
・ミラーサーバーへコピー
・ミラーサーバーのデータベースをリストア
・WordPress の設定をミラーサーバー用に変更
//バックアップ作業用ディレクトリ作成 $ cd ~ $ mkdir ./Backup $ cd ./Backup/ //本サーバーでバックアップ $ mysqldump -u WpAdmin -pWpPasswd -h localhost -A > WordPress.bak //バックアップファイルをミラーPCへコピー // SSH のポート番号 54321 の場合 $ scp -P 54321 ./WordPress.bak 192.168.0.100: Enter passphrase for key '/home/hogehoge/.ssh/id_ecdsa': //ミラーサーバーのデータベースをリストア $ mysql -u root -p WpDb < WordPress.bak パスワード: <-- データベースのパスワードではなく、mysql の root パスワード
これで、データベースのコピーは終了したが、WordPress の設定情報も更新されています。
したがって、本サーバーとミラーサーバーでは、アドレスが違うためミラーサイトへはアクセスできません。
ミラーサイトの、mysql で設定の情報を書き換える必要があります
//ミラーサイトでの作業 $ mysql -u root -p「rootパスワード」 MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | WpDb | | information_schema | | mysql | | performance_schema | +--------------------+ 4 rows in set (0.001 sec) MariaDB [(none)]> use WpDb MariaDB [WpDb]> select * from wp_options where option_name = "siteurl"; +-----------+-------------+------------------------------+----------+ | option_id | option_name | option_value | autoload | +-----------+-------------+------------------------------+----------+ | 1 | siteurl | http://www.hogehoge.com/blog | yes | +-----------+-------------+------------------------------+----------+ 1 row in set (0.000 sec) MariaDB [WpDb]> select * from wp_options where option_name = "home"; +-----------+-------------+------------------------------+----------+ | option_id | option_name | option_value | autoload | +-----------+-------------+------------------------------+----------+ | 2 | home | http://www.hogehoge.com/blog | yes | +-----------+-------------+------------------------------+----------+ 1 row in set (0.000 sec) //次のコマンドで、www.hogehoge.com を www2.hogehoge.com に変更する MariaDB [WpDatabase]>update wp_options SET option_value = "http://www2.hogehoge.com/blog" where option_id = 1 OR option_id = 2;
これで、ミラーサイト(www2.hogehoge.com)のWordPress にアクセスできるようになったはずです。
WordPress の設定の、「WordPressアドレス」「サイトアドレス」で確認します。
wp-content をバックアップ
投稿記事内容は、mysql に保存されていますが、テーマやアップロードしたメディアなどは、wp-content ディレクトリに保存されているようなので、これもバックアップします。
・WordPress インストールディレクトリへ移動
・tar コマンドで圧縮
・ミラーサイトへコピー
・ファイルをミラーサイトの作業ディレクトリへ移動
・展開
・展開された、wp-content ディレクトリをhttpd ユーザーアカウントに変更
・ミラーサイトのwp-contentディレクトリの名前変更
・作業ディレクトリのwp-content を移動
// wp-content をバックアップ # cd /home/www/html/blog # tar cvzf blog.tar.gz ./wp-content/ // blog.tar.gzを作業用のディレクトリに移動 # mv blog.tar.gz /home/hogehoge/Backup/ // アカウントの変更 # chown hogehoge.hogehoge blog.tar.gz // ミラーサイトへコピー # exit $ cd /home/hogehoge/Backup/ $ scp -P 54321 ./blog.tar.gz 192.168.0.100: Enter passphrase for key '/home/kazu/.ssh/id_ecdsa': // ミラーサイトで作業 // ユーザーホームディレクトリにコピーされている // 作業ディレクトリへ移動 $ mv ./blog.tar.gz ./Backup/ $ cd ./Backup/ // 展開 $ tar xvzf ./blog.tar.gz // 展開されたディレクトリをhttpd ユーザーアカウントに変更 $ sudo chown -R apache.apache ./wp-content/ // wordpress ディレクトリへ移動し、バックアップディレクトリ名を変更 $ cd /home/www/html/hogehoge.com/blog/ $ sudo mv wp-content wp-content.org // オリジナルのディレクトリを移動 $ sudo mv ./wp-content /home/www/html/hogehoge.com/blog/
これでミラーサイトのWordPress にログインできるはずなので
wordpress の「設定」⇒「一般設定」を確認
コメント