CentOS 8でWordPress 5.4.1をインストールする

みなさんはWordPressを自分で構築する際、レンタルサーバを契約しますよね。
しかし、中には自前でサーバを用意して1からWordPressを構築したい、あるいは企業の案件で1から構築しなければならないと言ったこともあるかと思います。

今回は、自前でサーバを用意してWordPressを構築する場合の方法について紹介したいと思います。

なお、今回はこの記事を投稿した時点で最新のバージョンであるLinuxのRedhat系 CentOS 8を使用したいと思います。
また、この記事で構築を行うWordPressの構築は「LAMP環境」とします。
※LAMP(ランプ)とは以下の頭文字をとったもの

  • L:Linux
  • A:Apache
  • M:Mysql(現在はMariaDB)
  • P:PHP

下準備

まず、WordPressを構築する前に下準備を行います。

下準備における作業内容は以下の通りです。

下準備の流れ
  • httpdのインストール
  • MariaDBのインストール
  • PHPのインストール
  • SELINUXの無効化
  • Firewalldの停止
  • Webサーバとしての動作確認
  • WordPressのダウンロードおよび展開

httpdのインストール

WordPressはWebサーバ上で稼働するシステムであるため、Webサーバが無ければ話になりません。

Webサーバとして稼働させるためのサービスは、いくつかありますが個人的に「Apache」が好きなのでhttpdをインストールします。
以下のコマンドを実行してhttpdをインストールしましょう。

httpdのインストール
# yum install -y httpd

httpdのサービス起動
# systemctl start httpd

再起動後も自動でhttpdのサービスを起動
# systemctl enable httpd

サービスの起動状態を確認
# systemctl status httpd

 

下図のように[Active: active (running)]となっていることを確認します。

httpdサービス起動状態確認

MariaDBのインストール

WordPressはDB(データベース)と呼ばれるサービスによって記事の内容の保存および読み込みを行っています。
今回は、MariaDBというサービスを使用してWordPressを構築します。

MariaDBサーバをインストール
# yum install -y mariadb-server

MariaDBのサービスを起動
# systemctl start mariadb.service

再起動後もMariaDBを自動で起動
# systemctl enable mariadb.service

サービスの起動状態を確認
# systemctl status mariadb.service

 

下図のように[Active: active (running)]となっていることを確認します。

MariaDB起動確認

PHPのインストール

WordPressの主なプログラム言語はHTML、CSS、PHPとなります。
HTMLやCSSは何もしなくてもソースファイルさえあれば動作しますが、PHPは別でインストールしなければなりません。
以下のコマンドを使用してPHPをインストールします。

PHP関係をインストールする
# yum install -y php*

SELINUXの無効化

SELINUXは、簡単に言うと「お節介機能」です。
これを有効にしていることで発生する不具合も多く使ってる人をみたことがありません。
ハッキリ言って邪魔なので無効化します。

SELINUXを無効化する
#vi /etc/selinux/config

6行目にある文字列を修正する(INSERTキーまたはIキーで入力モード)
SELINUX=enable → SELINUX=DISABLED

設定を保存する(ESCキーで入力モード解除)
:wq

設定確認
# cat /etc/selinux/config

 

下図のようになっていることを確認します。

SELINUX無効

Firewalldの停止

元々iptablesと呼ばれていたものです。
今回はFirewalldを使うほどのシステムでもないため、無効化します。
必要があれば別途設定してください。

Firewalldを停止する
# systemctl stop firewalld

再起動後もFirewalldが起動しないようにする
# systemctl disable firewalld

 

Webサーバとしての動作確認

ブラウザを開いてアドレスバーにサーバのIPアドレスを入力してみましょう。
以下のような画面が表示されれば、Webサーバとして稼働していることが確認できます。

httpサーバ実行状況確認

 

WordPressのダウンロードおよび展開

現時点で最新版の5.4.1のダウンロードおよび解凍をします。

WordPressをダウンロードする
# wget https://ja.wordpress.org/latest-ja.tar.gz

ダウンロードしたファイルを展開する
# tar xvzf latest-ja.tar.gz

展開されたファイルを確認する
# ls -l

「wordpress」ディレクトリが作成されていることが分かります。

 

ディレクトリにアクセスする
# cd wordpress/

wordpress内のファイルをドキュメントルートに移動する
# mv * /var/www/html/
注意
httpdをインストールしただけの場合、デフォルトのドキュメントルートは[/var/www/html]ですが、/etc/httpd/conf/httpd.confを編集している場合は、設定したドキュメントルートに移動してください。

 

ドキュメントルートにアクセスする
# cd /var/www/html/

パーミッション(権限)を変更する
# chown -R apache:apache *

パーミッションを確認する
# ls -l

 

こんな感じに表示されていることを確認します。

パーミッションの変更

以上で下準備は完了です。

WordPress用のDBを設定する

WordPress用のDBを設定します。

MariaDBの設定における作業内容は以下の通りです。

下準備の流れ
  • MariaDBにログインする
  • WordPress用のDBを作成する
  • DBのアクセス権を変更する

MariaDBにログインする

はじめにMariaDBにログインします。

MariaDBにログインする
# mysql -u root

 

以下のような画面が表示されたらログイン完了です。

MariaDBログイン

 

WordPress用のDBを作成する

WordPress用のDBを作成します。

DBを作成します。DB名は各々任意の名前を付けてください。(今回は「WORDPRESS」とします。)
MariaDB [(none)]> CREATE DATABASE [DB名] DEFAULT CHARACTER SET UTF8;

DBが作成されたか確認する
MariaDB [(none)]> SHOW DATABASES;

 

以下のように作成したDB名が表示されていることを確認します。

DB作成

DBのアクセス権を設定する

DBのアクセス権を設定します。

ユーザのパスワードを設定する(今回はテストなのでユーザ名は「root」としました。)
MariaDB [(none)]> update mysql.user set password=password('[rootユーザのパスワード]') where user = 'root';

パスワードを反映する
MariaDB [(none)]> flush privileges;

DBのアクセス権を設定する
MariaDB [(none)]> GRANT ALL PRIVILEGES ON [DB名].* to [ユーザ名]@localhost IDENTIFIED BY '[設定したユーザのパスワード]';

MariaDBから離脱
EXIT

一度サーバを再起動する
# reboot

 

設定ファイルを変更する

WordPressの設定ファイルを編集します。

wp-confing-sample.phpを編集する
# vi /var/www/html/wp-config-sample.php 

 

以下を修正します。

/** WordPress のためのデータベース名 */
define( 'DB_NAME', '[DB名]' );

/** MySQL データベースのユーザー名 */
define( 'DB_USER', '[ユーザ名]' );

/** MySQL データベースのパスワード */
define( 'DB_PASSWORD', '[ユーザのパスワード]' );

define( 'AUTH_KEY',         '[認証キーを記載(あとで記載する)]' );
define( 'SECURE_AUTH_KEY',  '[認証キーを記載(あとで記載する)]' );
define( 'LOGGED_IN_KEY',    '[認証キーを記載(あとで記載する)]' );
define( 'NONCE_KEY',        '[認証キーを記載(あとで記載する)]' );
define( 'AUTH_SALT',        '[認証キーを記載(あとで記載する)]' );
define( 'SECURE_AUTH_SALT', '[認証キーを記載(あとで記載する)]' );
define( 'LOGGED_IN_SALT',   '[認証キーを記載(あとで記載する)]' );
define( 'NONCE_SALT',       '[認証キーを記載(あとで記載する)]' );

 

認証キーを、以下のURLにアクセスして取得します。
記載された内容をコピペします。

https://api.wordpress.org/secret-key/1.1/salt/

WordPress初期セットアップ

ここまで来ると初期セットアップ画面が表示されます。

[さあ、始めましょう!]をクリックします。

WordPressセットアップ画面

 

これまで設定した内容を入力します。

DB設定

 

大体の人がこんな画面が出ると思います。
この画面が出た人は記載されている内容をコピーします。

wp-config.phpファイルに書き込みできません。

 

wp-config.phpを作成します。

wp-config.phpの作成
# vi wp-config.php

 

コピーした内容を貼り付け、保存します。

ブラウザに戻り[インストール実行]をクリックします。

 

運良く「ようこそ」画面が表示された場合は、画面の内容を入力したあと[Wordpress をインストール]をクリックします。

wordpress ようこそ

作業は以上となります。

スポンサーリンク

おすすめの記事