Cent OS 7でnginx+PHP+MariaDBでWordpressをインストール
OSのみの作成したCent OS 7系のインスタンスに「nginx」+「php」+「MariaDB」の構成でwordpressをインストールする手順です。phpのバージョンはyumで表示インストールされる「5.4系」をインストールしました
F/W(firewalld)の設定変更
firewalldでHTTPとHTTPSを通信を許可します
$ sudo firewall-cmd --permanent --zone=public --add-service=http success $ sudo firewall-cmd --permanent --zone=public --add-service=https success
また、Lightsail側のF/WでもHTTP(80番)とHTTPS(443番)のポートを開放していない場合は開放します
1.TOP画面から「インスタンス」→「接続するインスタンス」を選択します
2.「ネットワーク」のタブを選択します
3.HTTP(80番)とHTTPS(443番)のを追加して通信を許可します
nginxをインストール
以前はApacheを利用していましたが、今回は「nginx」をインストールします。Apacheよりnginxの方が、軽くて、大量アクセスを捌くことをできるのと、Apache以外のWEBサーバーを触ってみたかったからです
# nginxのリポジトリを追加します $ sudo vi /etc/yum.repos.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/ gpgcheck=0 enabled=1 # リポジトリを追加したら、yumでインストールします $ sudo yum install nginx # インストールが終了したら、nginxを起動して、自動起動を有効にします $ sudo systemctl start nginx $ sudo systemctl enable nginx
PHPと php-fpmをインストール
「php」と「php-fgm」をインストールします。最近のwordpressでは、php 7.3 が推奨されますが、今回はphp 5.4でインストールしています。
「php-fgm」は、nginxとphpを連携する時に使用します
# phpと必要なパッケージとphp-fgmをインストールします $ sudo yum install php php-mbstring php-pear php-fpm php-mcrypt php-mysql php-gd # php-fpmで使用するユーザー・グループををApacheからnginxに変更します $ sudo vim /etc/php-fpm.d/www.conf user = nginx group = nginx # php-fgmを起動して、自動起動を有効にします $ sudo systemctl restart nginx $ sudo systemctl enable php-fpm
nginx 設定
nginxでphpを動作するようにnginxの設定ファイルを変更します
# 初期の設定ファイルをバックアップします
$ sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.org
# phpを有効になるように設定を変更します
$ sudo vim /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
index index.php index.html index.htm;
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
# 設定を変更したら、nginx、php-fpmを再起動します
$ sudo systemctl restart php-fpm
$ sudo systemctl restart php-fpm
phpが動作しているか、phpinfo関数を作成してブラウザでアクセスします。phpの設定内容が表示されればphpが動作しています
$ sudo vim /usr/share/nginx/html/index.php <?php phpinfo(); ?>
MariaDBをインストール
MariaDBのパッケージをインストールします。
以前の記事「MariaDBのインストールと初期設定 | CentOS 7」でインストール方法の記事があるので詳しくはそちらを参考にしてください
# MariaDBのパッケージをインストール $ sudo yum install mariadb mariadb-server # 設定ファイルをコピーして、最小限の設定をします $ sudo cp -p /usr/share/mysql/my-small.cnf /etc/my.cnf.d/server.cnf $ sudo vi /etc/my.cnf.d/server.cnf [client] default-character-set = utf8 [mysqld] character-set-server = utf8 # 起動及び自動起動の設定 $ sudo systemctl enable mariadb.service $ sudo systemctl start mariadb.service # MariaDB セキュリティの初期設定 $ sudo mysql_secure_installation
wordpressで利用するDBとユーザーを作成します。今回は以下のように設定しています
- ユーザー:wpuser
- パスワード:13defa52ersd
- データベース:wordpress
$ mysql -u root -p MariaDB [(none)]> CREATE USER 'wpuser'@'localhost' IDENTIFIED BY '13defa52ersd'; MariaDB [(none)]> CREATE DATABASE wordpress; MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress.* TO wpuser@localhost IDENTIFIED BY "13defa52ersd"; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> exit
wordpressインストール
wordpressをインストールします。最新版をwgetでダウンロードして、ロートディレクトリに移動してから、wp-config.phpにDB情報を反映すればインストールは終了です。
また、wp-config.phpにある認証用ユニークキーですが、オンラインジェネレータhttps://api.wordpress.org/secret-key/1.1/salt/ にアクセスすれば簡単に生成できます
# wgetが入ってなかったのでインストールします
$ sudo yum install wget -y
# wordpressをwgetで取得します
$ wget https://ja.wordpress.org/wordpress-5.1-ja.tar.gz
# 解凍してルートディレクトリに移動します
$ tar zxfv wordpress-5.1-ja.tar.gz
$ sudo mv wordpress /usr/share/nginx/html/
# wp-config.phpを編集します
$ cd /usr/share/nginx/html/wordpress/
$ sudo cp wp-config-sample.php wp-config.php
$ sudo vim wp-config.php
// 以下の部分をMariaDBのインストール時に設定したものに適宜変更する。
/** WordPress のためのデータベース名 */
define('DB_NAME', 'wordpress');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'wpuser');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', '13fdve52');
/**#@+
* 認証用ユニークキー
*
* それぞれを異なるユニーク (一意) な文字列に変更してください。
* {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵>サービス} で自動生成することもできます。
* 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、す>べてのユーザーを強制的に再ログインさせることになります。
*
* @since 2.6.0
*/
root$ vi wp-config.php
define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');
wordpressのインストールと設定が終われば、ブラウザで「http://[IPアドレス]/wordpress」にアクセスしてwordpressの初期設定画面になればOKです





コメント