WordPress on PHP 7
on CentOS 7
on Sakura-VPS
@serima
2016.02.04 PHP 7 Casual Talks
@serima
• ザッパラスのサーバサイドエンジニア
• 占いのアプリとか作ってます
• Laravel 5.1
• 意外とオフィスは渋谷にあります
• ヒカリエまで徒歩5分!
• 今年、2 回目の LT
• こないだ、PHP BLT #2 でライブラリの脆弱性チェッ
クの話をしました
経緯
• PHP BLT #2 で予想以上に PHP 7 の話が少なかった
• 20 人ぐらい LT して、たしか 3 人程度
• なぜか PHP 6 をインストールしてみたって人が現れ
たり…
• Why PHPer People!
捕捉
• こんなつぶやきを @fortkle さんに捕捉されてしまい、
この場に立っています
そもそも
WordPress って
PHP 7 対応してるの?
5.6 or greater!!
特に PHP 7 に関する特記事項は見当たらない
ちなみに最新版は、WordPress 4.4.2
動くでしょ
• まぁ普通に動くでしょう
• @shin1x1 さんも先取りして動いてるっぽいし
転機
• 個人ブログを 4 年ぐらい前に借りたさくら VPS で運用
していた
• 身近なところで WordPress が乗っ取られる事案が発生
• メンテも何もしてないので、早く何とかしないと…
• 年末年始の休み期間中に諸々見直すことにした
さくら VPS
• 久々にチェックしたら同じ料金でスペック上がってる
• 時の流れを感じた
• 移行への胸の高鳴り
せっかくなので
Infrastructure as Code
https://github.com/serima/
centos7-initalize-ansible
イニシャライズの説明(ざっくり)
• admin っていうユーザを作るよー
• SSH ポート変えるよー
• パスワードログイン禁止するよー
• root ログイン禁止するよー
• sudo 権限つけるよー
• firewall の設定するよー
• 置くよー
• sshd 再起動するよー
https://github.com/serima/
centos7-php70-nginx-mariadb-
ansible
次のステップ(ざっくり)
• さっき root での ssh ログインは禁止しちゃったので、
admin ユーザで ssh し直す
• 必要なパッケージとかもろもろインストール
• yum で PHP 7 を入れたいので、remi repository 追加
• 完成!
• 詳しくは playbook 見てね…
性能比較してみた
• Before
• PHP 5.5
• Apache/mod_php
• MySQL
• HDD
• Osaka region
• After
• PHP 7.0
• nginx/php-fpm
• MariaDB 5.5
• SSD
• Tokyo region
あまりにも違いが多すぎて、
純粋にPHP7のおかげか分からない🆖
0
7
14
21
28
RPS
before after
Request Per Second 約 4 倍!
2ヶ月くらい運用していますが
何も問題ありません
とはいえ、
プラグインには要注意🚧
入れているプラグイン
• Akismet
• All In One SEO Pack
• All In WP Security
• Crayon Syntax Highlighter
• Easy Twitter Feed Widget
• Google Analytics
• Header and Footer
• WordPress Popular Posts
• WordPress インポートツール
• WP Multibyte Patch
• WP Social Bookmarking Light
まとめ
• 私は WordPress のプロではありません✋
• 仕事で使うときはもうちょっと詳しく検討しましょう
• でも、パフォーマンスはかなり上がるのでこれから立
ち上げるときは、PHP 5.6 は捨てて PHP 7 を積極的に
使っていくほうが良いと思います
• デモの準備をしようと思って、仕事を早めに切り上げたのに、新規で借りたさくらVPSのサーバがいつまでもコ
ントロールパネルに現れなくて泣いた(言い訳)
http://serima.co/blog/

WordPress on PHP7 on CentOS7 on Saraku-VPS