CentOS 8 WordPress インストール
Apache 2.4 + MariaDB 10.3 + PHP 7.3 でWordpressを利用するWEBサーバーを作る
CentOS 8で稼働しているサーバーでWordpressを利用できるようにします、インストールする環境は以下のような環境です
- CentOS 8.2
- Apache 2.4
- MariaDB 10.3
- PHP 7.3
EPEL、remiのレポジトリをインストールする
CentOS 8の標準のPHPではPHP 7.3が含まえていないので、PHP 7.3を利用するためにEPEL、remiのレポジトリをインストールします。
※ PHP 7.3 のインストールは本記事の後半の方で紹介します
# EPELのレポジトリをインストール $ sudo dnf install epel-release # remiレポジトリをインストール $ sudo dnf install http://rpms.famillecollet.com/enterprise/remi-release-8.rpm
MariaDB 10.3 をインストールする
MariaDBをインストールします。インストールはdnfコマンドでインストールします。
# mariadb-server をインストールします $ sudo dnf install mariadb-server # インストールしたバージョンを確認します $ mysql --version mysql Ver 15.1 Distrib 10.3.17-MariaDB, for Linux (x86_64) using readline 5.1
MariaDBを起動して、MariaDBの自動起動の設定をおこないます
$ sudo systemctl enable mariadb $ sudo systemctl start mariadb
MariaDBの初期設定をおこないます。初期設定の詳細は、OSのバージョンが異なりますが、MariaDBのインストールと初期設定 | CentOS 7 を参考にして下さい
$ sudo mysql_secure_installation root user without the proper authorisation. # rootのパスワード設定するか? [y]を選択 Set root password? [Y/n] y # rootのパスワード入力 New password: # rootのパスワード再入力 Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! # 匿名ユーザーを削除するか? [y]を選択 Remove anonymous users? [Y/n] y ... Success! # rootユーザーのリモートログインをブロックするか? [y]を選択 Disallow root login remotely? [Y/n] y ... Success! # テストDBを削除するか? [y]を選択 Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! # ユーザ権限テーブルをリロードするか? [y]を選択 Reload privilege tables now? [Y/n] y ... Success! Thanks for using MariaDB!
mariadb-server.cnfの設定をおこないます。主にDBで使用する文字コードを設定します
$ sudo vim /etc/my.cnf.d/mariadb-server.cnf [mysqld] character-set-server = utf8 $ sudo vim /etc/my.cnf.d/client.cnf [client] default-character-set = utf8 # 設定を変更したらMariaDBを再起動します $ sudo systemctl restart mariadb
WordPressで利用するDBを作成します
$ mysql -u root -p MariaDB [(none)]> CREATE USER 'wpadmin'@'localhost' IDENTIFIED BY 'パスワード'; MariaDB [(none)]> CREATE DATABASE wordpress_db; MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress_db.* TO wpadmin@localhost IDENTIFIED BY "パスワード"; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> exit
Apache 2.4 をインストール
以前はNginxを利用しましたが、今回はApacheを利用してみます。
インストールはdnfコマンドでインストールしています
$ sudo dnf install httpd
Apacheは設定ファイルは以下のような設定にしました。
Wordpress をインストールするドメインはVirtualHostを切って設定しています。SSL証明書は事前に発行済でそれを設定しています
$ sudo vi /etc/httpd/conf.d/vhosts.conf <VirtualHost *:80> ServerName www.example.com RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.example\.com RewriteRule ^/(.*)$ https://www.example.com/$1 [R=301,L] </VirtualHost> <VirtualHost *:443> ServerName ex1.m-yabe.com ServerAlias ex1.m-yabe.com ErrorLog /var/www/vhosts/www.example.com/log/ssl-error.log CustomLog /var/www/vhosts/www.example.com/log/ssl-access.log common DocumentRoot /var/www/vhosts/www.example.com/wordpress/ DirectoryIndex index.php index.html SSLEngine On SSLVerifyClient none SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem <Directory /var/www/vhosts/www.example.com/wordpress/> Options FollowSymLinks MultiViews AllowOverride All Require all granted <IfModule mod_dav.c> Dav off </IfModule> </Directory> </VirtualHost>
設定ファイルを作ったら、Apacheを起動して、その後自動起動等の設定をおこないます
$ sudo systemctl start httpd $ sudo systemctl enable httpd
PHP 7.3 をインストールする
PHP 7.3をインストールするには、一旦PHPをモジュールをリセットして、その後PHP 7.3 に設定します
$ sudo dnf module reset php $ sudo dnf module enable php:remi-7.3
PHPのモジュールの設定は済んだら、epel, remiをレポジトリを有効にしてPHPと関連パッケージをインストールします
$ sudo dnf install --enablerepo=epel,remi php php-mbstring php-pear php-mysqlnd php-gd php-pecl-zip php-json $ php -v PHP 7.3.19 (cli) (built: Jun 9 2020 08:06:30) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.19, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.3.19, Copyright (c) 1999-2018, by Zend Technologies
WordPress のインストール
WordPress をインストールするディレクトリに移動してWordpress の圧縮ファイルをダウンロードします
$ cd /var/www/vhosts/www.example.com/ $ wget http://wordpress.org/latest.tar.gz $ tar xzvf latest.tar.gz
wp-config-sample.php を wp-config.php にリネームして、DB関連の設定をおこないます
$ mv wordpress/wp-config-sample.php wordpress/wp-config.php $ vi wordpress/wp-config.php // ** MySQL 設定 - この情報はホスティング先から入手してください。 ** // /** WordPress のためのデータベース名 */ define( 'DB_NAME', 'wordpress_db' ); /** MySQL データベースのユーザー名 */ define( 'DB_USER', 'wpadmin' ); /** MySQL データベースのパスワード */ define( 'DB_PASSWORD', 'password_here' ); /** MySQL のホスト名 */ define( 'DB_HOST', 'localhost' );
wp-config.php を設定が終わったら、Wordpress のCUIでのセットアップは終了しているので、ブラウザで「https://www.exapmle.com/wp-admin/install.php」にアクセスすればインストール終了です
ディスカッション
コメント一覧
まだ、コメントがありません