このセクションでは、ブログやホームページ作成でよく使われている オープンソフトウェアである WordPress のインストールについて、紹介します。
モジュールの入手と配置
WordPress のモジュールをダウンロードします。
[root@localhost tmp]# wget wget http://ja.wordpress.org/wordpress-4.9.8-ja.tar.gz --2018-09-30 16:03:02-- http://wget/ wget (wget) をDNSに問いあわせています... 失敗しました: 名前またはサービスが不明です. wget: ホストアドレス `wget' を解決できませんでした。 --2018-09-30 16:03:02-- http://ja.wordpress.org/wordpress-4.9.8-ja.tar.gz ja.wordpress.org (ja.wordpress.org) をDNSに問いあわせています... 198.143.164.252 ja.wordpress.org (ja.wordpress.org)|198.143.164.252|:80 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 301 Moved Permanently 場所: https://ja.wordpress.org/wordpress-4.9.8-ja.tar.gz [続く] --2018-09-30 16:03:03-- https://ja.wordpress.org/wordpress-4.9.8-ja.tar.gz ja.wordpress.org (ja.wordpress.org)|198.143.164.252|:443 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 200 OK 長さ: 9292403 (8.9M) [application/octet-stream] `wordpress-4.9.8-ja.tar.gz' に保存中 100%[=============================================>] 9,292,403 2.09MB/s 時間 4.2s 2018-09-30 16:03:08 (2.09 MB/s) - `wordpress-4.9.8-ja.tar.gz' へ保存完了 [9292403/9292403] 終了しました --2018-09-30 16:03:08-- 経過時間: 5.5s ダウンロード完了: 1 ファイル、8.9M バイトを 4.2s で取得 (2.09 MB/s) [root@localhost tmp]#
ダウンロードしたモジュールを、ホームページを公開するディレクトリ( /var/www/wordpress )に解凍します。
[root@localhost tmp]# tar -zxvf wordpress-4.9.8-ja.tar.gz -C /var/www/ wordpress/ wordpress/wp-blog-header.php wordpress/xmlrpc.php wordpress/readme.html wordpress/wp-activate.php wordpress/wp-login.php wordpress/wp-content/ 〜(省略)〜 wordpress/wp-mail.php wordpress/wp-comments-post.php wordpress/wp-trackback.php wordpress/wp-signup.php [root@localhost tmp]#
ホームページを公開するディレクトリ( /var/www/wordpress )のアクセス権と所有権を、Webサーバー( HTTPD )起動ユーザーに変更します。ここでは、HTTPD 起動ユーザーが apache としているので、適宜変更してください。
■ 現在のアクセス権と所有権を確認 [root@localhost www]# ls -la 合計 4 drwxr-xr-x. 5 root root 50 9月 30 16:04 . drwxr-xr-x. 20 root root 278 9月 30 15:45 .. drwxr-xr-x. 2 root root 6 6月 27 22:49 cgi-bin drwxr-xr-x. 2 root root 6 6月 27 22:49 html drwxr-xr-x. 5 nobody 65534 4096 8月 3 11:07 wordpress [root@localhost www]# ■ アクセス権と所有権の変更 [root@localhost www]# chown -R apache:apache * [root@localhost www]# ■ 変更後のアクセス権と所有権を確認 [root@localhost www]# ls -la 合計 4 drwxr-xr-x. 5 root root 50 9月 30 16:04 . drwxr-xr-x. 20 root root 278 9月 30 15:45 .. drwxr-xr-x. 2 apache apache 6 6月 27 22:49 cgi-bin drwxr-xr-x. 2 apache apache 6 6月 27 22:49 html drwxr-xr-x. 5 apache apache 4096 8月 3 11:07 wordpress [root@localhost www]#
データベースの作成
データベースクライアントを使用して、データベースサーバーに root ユーザーとして接続します。
[root@localhost ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 4012 Server version: 5.5.60-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
WordPress のデータベースを、文字コード utf8 を指定して作成します。ここでは、データベース名を wp としているので適宜変更してください。
MariaDB [(none)]> create database wp character set utf8; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]>
WordPress のデータベースに接続するためのユーザーを作成します。ここでは、ユーザーを WP_USER、パスワードを WP_DB_PASS としているので適宜変更してください。
MariaDB [(none)]> create user 'WP_USER'@'localhost' identified by 'WP_DB_PASS'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>
WordPress のデータベースに接続するためのユーザーを作成します。ここでは、ユーザーを WP_USER、パスワードを WP_DB_PASS としているので適宜変更してください。
ユーザー WP_USER にデータベース wp へのアクセス権を付与します。
MariaDB [(none)]> grant all privileges on wp.* to 'WP_USER'@'localhost'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> MariaDB [(none)]> quit Bye [root@localhost wordpress]#
初期設定ファイルの作成
サンプルファイルをコピーし、WordPress 初期設定ファイルを作成します。
[root@localhost www]# cp /var/www/wordpress/wp-config-sample.php /var/www/wordpress/wp-config.php [root@localhost www]#
作成した WordPress 初期設定ファイルのアクセス権と所有権を、Web サービス( HTTPD )起動ユーザーに変更します。
[root@localhost wordpress]# chown -R apache:apache wp-config.php [root@localhost wordpress]#
WordPress 初期設定ファイルを編集し、以下設定します。
[root@localhost wordpress]# vi wp-config.php
WordPress のデータベースを指定します。ここでは、データベース wp としているので、適宜変更してください。
/define('DB_NAME', 'database_name_here'); define('DB_NAME', 'wp');
WordPress のデータベース接続ユーザーを指定します。ここでは、データベース接続ユーザーを WP_USER としているので、適宜変更してください。
/** MySQL データベースのユーザー名 */ /define('DB_USER', 'username_here'); define('DB_USER', 'WP_USER');
WordPress のデータベース接続ユーザーのパスワードを指定します。ここでは、データベース接続ユーザーのパスワードを WP_DB_PASS としているので、適宜変更してください。
/** MySQL データベースのパスワード */ /define('DB_PASSWORD', 'password_here'); define('DB_PASSWORD', 'WP_DB_PASS');
WordPress のデータベースがある DBサーバーのホストを指定します。ここでは、WordPress のモジュールを配置したローカルサーバー上に DBサーバーがあるため、localhost を指定しています。
/** MySQL のホスト名 */ define('DB_HOST', 'localhost');
ドキュメントルートの変更
Webサーバーの設定ファイル( /etc/httpd/conf/httpd.conf )を編集し、以下設定します。
[root@localhost www]# vi /etc/httpd/conf/httpd.conf
ドキュメントルートに、wordpress を配置したディレクトリ( /var/www/wordpress )を指定します。
DocumentRoot "/var/www/wordpress"
wordpress を配置したディレクトリ( /var/www/wordpress )に対する AllowOverride ディレクティブで、.htaccessを有効にします。
<Directory "/var/www/wordpress"> AllowOverride All </Directory>
変更した設定を反映させるために、Webサービス( HTTPD )を再起動します。
■ 再起動 [root@localhost www]# systemctl restart httpd [root@localhost www]# ■ 起動状態の確認 [root@localhost www]# systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-09-30 16:11:20 JST; 4s ago Docs: man:httpd(8) man:apachectl(8) Process: 13370 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS) Main PID: 13381 (httpd) Status: "Processing requests..." CGroup: /system.slice/httpd.service ├─13381 /usr/sbin/httpd -DFOREGROUND ├─13383 /usr/sbin/httpd -DFOREGROUND ├─13384 /usr/sbin/httpd -DFOREGROUND ├─13385 /usr/sbin/httpd -DFOREGROUND ├─13386 /usr/sbin/httpd -DFOREGROUND └─13387 /usr/sbin/httpd -DFOREGROUND 9月 30 16:11:20 localhost.localdomain systemd[1]: Starting The Apache HTTP Server... 9月 30 16:11:20 localhost.localdomain httpd[13381]: AH00558: httpd: Could not rel...e 9月 30 16:11:20 localhost.localdomain systemd[1]: Started The Apache HTTP Server. Hint: Some lines were ellipsized, use -l to show in full. [root@localhost www]#