CentOS7でWordPRessを構築してみた感想

logwのサーバーを変更しました。具体的にはCentOS6から7にするなどしただけになりますが、簡単に表にしてみました。

 新環境旧環境
OSCnetOS7CnetOS6
WebサーバーApache2.4系nginx1.8
DBサーバーMySQLMariaDB

こんな感じです。最新?にしたというだけになります。CentOS6でも現役なので問題ないのですが、CentOS7から仕組みが変わったのもあり使ってみようと思いました。

CentOS6は2020年までサポート期間があるので現状CentOS7を無理に使う必要性は正直ありません。CentOS6でも十分かなと思います。CentOS5を使っている方はOSをそろそろ変える準備したほうがいいかもしれません。

巷で話題のnginxを使ってみる

今まではApacheを使っていました。特にnginxを使う機会もなかったのですが今回サーバーを入れ替えるので実際に触れてみようと思い慣れないnginxを使ってみることにしました。Apacheと比べて良いかどうかと言われたらわかりません。言えるのは慣れないのでインストールが面倒ということです。

実際に構築してみてどうか

正直面倒です。理由はいくつかあります

参考サイトが間違っている

一番困るパターンです。勿論参考サイトとlogwでは環境が違うのでそのサイトの人が構築したときはうまくいったのかも知れませんが同じように僕がするとエラーがでるというのがありました。

http://blog.higty.xyz/archives/231のサイトさんが今回自分が構築するときに環境が近いので参考にしましたが、まずphpのインストール→php-fpm→nginxと手順になっていますがこの通りにはできません。そもそもphp-fpmが起動しなくてエラーになります。

参考サイトではuserやgroupをapacheからnginxに変えていますが、そもそもこの段階ではnginxなんてユーザーは存在しないのでその後の起動をしてもエラーになるだけで起動はしません。
※実際に僕の環境ではそうでした。

手順としては最初にnginxのインストール→phpのインストール→php-fpmの設定になります。

デフォルトの設定で終わっている

これはしょうがないといえばしょうがないですが、nginx WordPressなどの検索ワードで検索してヒットするサイトは、基本的にWordPressのインストールで終わっています。そのためWordPressのパーマリンクがデフォルトの状態を想定しています。しかし中にはWordPressのパーマリンク設定を変えているケースもあります。
※実際にlogwは変えています

そのため、このままの設定をしても404エラーとなり見られません。

.htaccessが使えない

個人的にはnginxをインストールしてWordPressの設定も終わって404エラーとなりわかったのですが、nginxではhtaccessが使えません。PLESKでは使えるみたいですが少なくとも自分でソースからインストールする場合は使用方法はありませんでした。Apacheでは.htaccessで設定していた内容が全然使えないという意味わからない事になります。そしてそのことは参考サイトなどでは書いていなく余計時間かかりました。

書き方が異なる

Apacheとはそもそもミドルウェアとして違うので書き方が異なるのは当然ですが、慣れるまでこれもちょっと時間かかりました。このあたりはしょうがないので慣れるしかないかなと思います。

書き方はプログラム近いのでプログラマさんとかには受け入られやすいのかもしれません。

とまぁ不満は色々でてきますが、構築などになれいけばこれらの不満は消えていくと思います。

nginxとApacheを構築してみて

nginxの特性として軽いとか、キャッシュを使うために早いなどがありますが、今回のようなWEBもDBも同一サーバーでかなり多いリクエストをうけるサイトとかならnginxでいいかもしれません。例えばキャンペーンなどの短期LP等

複数台構成や.htaccessを使いたいなどある場合は現状Apacheの方が良いかもしれません。