centos7+nginx+php7+mysql5.7+wordpressの構築#4

ゼロベースでサーバー構築したログ

wordpressの構築
これで最後

wordpressの構築

今後の開発も考えてドキュメントルートにシンボリックリンクを作る形で対応

ダウンロード

sh
# wordpress構築ディレクトリ
mkdir -p /var/www/wp_tmp
cd /var/www/wp_tmp

# wordpressダウンロード後に展開
sudo wget https://ja.wordpress.org/wordpress-4.9.4-ja.tar.gz
sudo tar zxvf wordpress-4.9.4-ja.tar.gz
sudo chown -R nginx:nginx wordpress
sudo mv wordpress wordpress-4.9.4-`date "+%Y%m%d"`
sudo rm -rf wordpress-4.9.4-ja.tar.gz

デプロイ

sh
sudo ln -nfs /var/www/wp_tmp/wordpress-4.9.4-20180222 /var/www/wordpress

nginxにwordpressの設定を追加

sh
# ドキュメントルートの変更
sudo vim /etc/nginx/conf.d/default.conf
---
location / {
        root /var/www/wordpress;
}
---
sh
# もろもろの設定
# 設定ファイルへのアクセス禁止
# ファビコン対応
# 静的ファイルのキャッシュ
# パーマリンク対応
sudo vim /etc/nginx/conf.d/01-wordpress.conf
---
server {
  listen       80;
  server_name  web4life.jp;
  index        index.php index.html;
  root         /var/www/wordpress;

  client_max_body_size 5M;

  location ~* /wp-config.php {
    deny all;
  }

  location /favicon {
    empty_gif;
    access_log     off;
    log_not_found  off;
  }

  # 静的ファイルのキャッシュ
  location ~ .*\.(html?|jpe?g|gif|png|css|js|ico|swf|inc) {
    expires     1d;  # キャッシュ期間
  }

  location / {
    try_files $uri $uri/ @wordpress;
  }

  location ~ \.php$ {
    try_files $uri @wordpress;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_split_path_info ^(.+.php)(.*)$;
    include        fastcgi_params;
    fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }

  location @wordpress {
    fastcgi_index            index.php;
    fastcgi_split_path_info  ^(.+.php)(.*)$;
    fastcgi_pass             127.0.0.1:9000;
    include                  fastcgi_params;
    fastcgi_param            SCRIPT_FILENAME $document_root/index.php;
  }
}

# nginx再起動
sudo systemctl restart nginx

wordpressのDB作成

wordpressから参照するDBのユーザーとパスワードを作成

sh
mysql -u root -p
# データベース作成
> CREATE DATABASE wordpress;

# ユーザー作成
> GRANT ALL PRIVILEGES ON wordpress.* TO "[wordpress用のユーザー]"@"localhost" IDENTIFIED BY "[wordpress用のパスワード]";
> FLUSH PRIVILEGES;

wordpressの初期設定

sh
sudo cp -p wp-config-sample.php wp-config.php
sudo vim wp-config.php

# 
ブラウザでアクセスして設定を進める
データベース名
ユーザー名
パスワード

あとはブラウザからアクセスすれば、wordpressの案内にしたがえば完了

まとめ

サーバーをちょっと触ったことある人でも比較的簡単にできると思う。
基本的に備忘録だが、これから構築する人の参考になれば。

構築記事の一覧

centos7+nginx+php7+mysql5.7+wordpressの構築#1
centos7+nginx+php7+mysql5.7+wordpressの構築#2
centos7+nginx+php7+mysql5.7+wordpressの構築#2
centos7+nginx+php7+mysql5.7+wordpressの構築#4