さくらVPSでスタートアップスクリプトを使用して簡単に構築したSSL環境にWordpressをインストールする
さくらVPSでスタートアップスクリプトに「public」CentOS_LAMP」を選択してインストールしたCentOS 7.0(以下「CentOS7Server」)に以下の<さくらのVPS【SSL】/作業メモ>の設定を行った後にWordpressをインストールしました。
<さくらのVPS【SSL】/作業メモ>
◎ドメインの設定
- さくらVPSにさくらインターネットで契約した独自ドメイン(mydomein.jp)のサブドメイン(sub.mydomein.jp)を設定しました。
- サブドメイン(sub.mydomein.jp)の追加は、「さくらのサポート情報のドメインのゾーン編集」を参照して行いました。さくらインターネットのドメインメニューから独自ドメイン(mydomein.jp)のゾーン編集でゾーンを表示し、「変更」ボタンをクリックして表示される「エントリの追加と変更」の表で、エントリ名に「サブドメイン名(sub)」、種別に「IPアドレス(A)」を選択し、値に「さくらVPSのIPアドレス(XXX.XX.XXX.XX)」を入力して「変更」ボタンを押した後に「データ送信」ボタンを押すだけで簡単に追加できました。
◎Wordpress用データベースの作成
- phpMyAdminを使用して、MariaDBに照合順序「utf8_general_ci」で「DB_NAME(任意)」というWordpress用のデータベースを作成しました。
◎Wordpressファイルのサーバーへの配置
- CentOS7ServerにSSH接続し、suコマンドでrootになり作業を行いました。
$ ssh -pXXXXXX sakura@XXXXX.sakura.ne.jp sakura@XXXXX.sakura.ne.jp's password: $ su - パスワード: #
- 「/var/www/html/」に移動し、wgetコマンドを使用して、WordPressのソースファイル(wordpress-5.1.1-ja.zip)をダウンロードしました。
# cd /var/www/html/ # wget http://ja.wordpress.org/wordpress-5.1.1-ja.zip
- ダウンロードしたWordPressのソースファイル(wordpress-4.0-ja.tar.gz)を解凍し、解凍して出来たフォルダの名前を「sub.mydomein.jp(サブドメインネームと同じにしました)」に変更しました。
# unzip wordpress-5.1.1-ja.zip # mv wordpress sub.mydomein.jp
- 「/var/www/html/sub.mydomein.jp/」フォルダの所有者を「nginx」に変更し、パーミションを「755」に変更しました。
# chown -R nginx:nginx ./sub.mydomein.jp/ # chmod 755 ./sub.mydomein.jp/
◎Nginxの設定(WordPressをサブドメインのトップフォルダで運用するため)
- WordPressをサブドメインのトップフォルダで運用するために「/etc/nginx/conf.d/https.conf」に記載された「location / {…}」のサーバーrootの記述を「/usr/share/nginx/html」から「/var/www/html/sub.mydomein.jp」に変更しました。
# cd /etc/nginx/conf.d/ # nano https.conf
location / { #root /usr/share/nginx/html; root /var/www/html/sub.mydomein.jp; }
- WordPressをサブドメインのトップフォルダで運用するために「/etc/nginx/conf.d/https.conf」に記載された「location ~ \.php$」のサーバーrootの記述を「html」から「/var/www/html/sub.mydomein.jp」に変更しました。
location ~ \.php$ { #root html; root /var/www/html/sub.mydomein.jp; }
◎Nginxの設定(パーマリンクのカスタム構造設定で404エラーが出ることへの対策)
- パーマリンクのカスタム構造設定で404エラーが出ることへの対策として、「/etc/nginx/conf.d/https.conf」の「location /」に「try_files $uri $uri/ @wordpress;」という記述を追記しました。
# cd /etc/nginx/conf.d/ # nano https.conf
location / { #root /usr/share/nginx/html; root /var/www/html/sub.mydomein.jp; # for Wordpree try_files $uri $uri/ @wordpress; index index.php index.html index.htm; }
- 上記の「@wordpress;」に対する「location @wordpress」の内容を上記「location /{…}」の下に下記の内容で追記しました。
location @wordpress { fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_param SCRIPT_FILENAME /var/www/html/sub.mydomein.jp/index.php; include fastcgi_params; }
◎Nginxの設定(Wordpressのファイルアップロード失敗への対応)
- nginxが受け付ける最大のbodyサイズがデフォルトで1Mバイトに制限されているためにWordpressのファイルアップロードに失敗することへの対策として、「/etc/nginx/conf.d/」の「https.conf」をエディタnanoで修正して、「server{…}」に「client_max_body_size 10m;」という記述を追記して、10Mまでのファイルのアップロードに対応できるようにしました。
# cd /etc/nginx/conf.d/ # nano https.conf
server{ client_max_body_size 10m; }
◎PHP-FPMとNginxの再起動
- PHP-FPMとNginxを再起動ました。
# systemctl restart php-fpm # systemctl restart nginx.service
◎上記設定の後、「さくらVPSでWordpress」と同様にWordpressのインストールを行い、パーマリンクのカスタム構造を設定しても404エラーが出ないこと、10M以下のファイルを問題なくアップロードできることを確認して検証を終了しました。
<= さくらVPSでphpMyAdmin | |