更新を大分サボってたので大分時間が経ってしまいましたが、Task 4の備忘録を思い出しつつ書いてみます。
ypsはLaravelでの開発がメインですが、今回はちょっと寄り道的なタスクでWordPressの構築を行います。
#事前準備
wgetがインストールされていない場合はインストールしましょう
sudo yum install wget -y
#WordPressのセットアップ
※記事執筆時(2020/10/12)の最新版は5.5
tmpディレクトリに最新版のWPをダウンロードして解凍
-
cd /tmp
1 wget https://ja.wordpress.org/latest-ja.zip
unzip ./latest-ja.zip
ディレクトリを移動
4. mv wordpress '任意のディレクトリ名'
※任意の名前に変更(なるべく一般的な名前は避ける)
5. mv '任意のディレクトリ名' /var/www/html/
MySQLにWP用のデータベースを作成
6. mysql -u root -p
でMySQLにログイン
以下MySQL Cliでの操作
7. create database '任意のDB名';
※データベース名はなるべく複雑なものの方がベター
8. grant all on ypswpdb.* to '任意のuser名'@localhost identified by '任意のパスワード';
データベースの権限を委譲しています
※ここで設定したユーザー名とパスワードを忘れてしまうと後々面倒なのでどこかにメモるなりしておく
9.設定し終わったら exit;
WP設定ファイルの更新
cd /var/www/html/yps-wp/
cp -p wp-config-sample.php wp-config.php
まずは下記を変更します。
define( 'DB_NAME', ' #7で設定したDB名' );
define( 'DB_USER', '#8で設定したuser名' );
define( 'DB_PASSWORD', '#8で設定したパスワード' );
続いて下記を更新します。
更新時にはコメントにあるようにhttps://api.wordpress.org/secret-key/1.1/salt/ にアクセスすると自動でシークレットキーを生成してくれるので便利です(アクセスする度に新しいキーが生成されます)。
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' );
最後に下記を更新します
$table_prefix = '任意の文字列_';
:wq
で保存したら一先ずWPの設定は完了
ファイルとディレクトリのオーナー権限を変更
cd /var/www/html
sudo chown -R centos:nginx /var/www/html/wwpp/
sudo find /var/www/html/wwpp/ -type f -exec chmod 664 {} \;
sudo find /var/www/html/wwpp/ -type d -exec chmod 775 {} \;
次にnginxの設定を変更してLaravelからWPへルートディレクトリを変更します
sudo vi /etc/nginx/conf.d/default.conf
編集内容は以下の通り
root /var/www/html/yps/public;
#↓に変更
root /var/www/html/wwpp;
#追記
location /wp-config.php {
deny all;
}
:wq
で設定を保存したらphp-fpmとnginxを再起動します
sudo systemctl restart php-fpm && sudo systemctl restart nginx
※WPとLaravelを同時に動かしたい場合は下記のリンクを参照
ドメインネーム(設定してない場合はインスタンスのpublic IP)でブラウザからアクセス
WPのインストール画面が出ていれば成功です。
ただし、このままだとテーマやプラグインのインストールができないので少し設定をいじります。
cd wp-content/plugins/
wget https://downloads.wordpress.org/plugin/ssh-sftp-updater-support.0.8.2.zip
unzip ./ssh-sftp-updater-support.0.8.2.zip
rm http://ssh-sftp-updater-support.0.8.2.zip
sudo chown -R centos:nginx ./ssh-sftp-updater-support/
正常にプラグインがインストールされていればテーマをインストールできるようになっているはずです。
念のため下記の参考リンクを使ってできる範囲でのセキュリティ対策もしておきましょう
以上でWPの構築は終了です。
-
/tmpは再起動時にディレクトリが消えるので、wgetでインストールするときなどに便利 ↩