SEO対策、キャッシュの利用でデータ転送量を削減までの記事では、ブラウザでサイトを見る時のブラウザからリクエストを送り、レスポンスが返ってくる時のデータの最適化を見てきたけれども、今回から新たな視点を加えてのSEO対策を見ていくことにする。


pagespeed_result0


Google製のWebサービスであるPageSpeed Insightsでスコアが100になるためには、


pagespeed_result


ラボデータで各項目がオールグリーンになる必要がある。

ここで最後まで苦戦したのが、インタラクティブになるまでの時間と初回入力遅延の最大推定時間で、どちらもブラウザからサーバに対して、任意のページを開く時のURLのリクエストの送信からページが完全に開くまでの時間を指していて、データの転送量をいくら削減しても、サーバ自体の反応が遅ければ、ここらへんの評価は下がってしまう。


これに対して一番最初に思いつくのが、スペックが半端なく高い専用サーバを借りるということを思いつくけれども、汎用CMSのメンテナンスを行っている者なので、ここはあえてギリギリのスペックのサーバで挑戦している。


これらを踏まえた上で、サーバ側の処理を速くする為に行ったことを数回に分けて紹介する。




最初に見るべき個所はCMSを動かしている言語のバージョンを常に最新にするということ。


php_logo


当ブログを動かしているSOY CMSはPHP製なので、PHPのバージョンは常に最新にしておく必要がある。

SOY CMSとSOY ShopでPHP7.4系に対応してみました


PHPは7系になってから、OPCacheという仕組みによって急激な高速化を果たすことが出来、現在も高速化が進んでいる。

PHPのバージョンを上げるだけでスコアが上がるのであればやらない理由はない。


VPSサーバでPHPのバージョンを上げる為の対応は下記に記事に記載がある。

※下記の記事はPHP7.3の時の対応だけれども、各コマンドの「7.3」の個所を「7.4」に変えて実行すれば良い。

さくらのVPSにUbuntu18.04を入れてSOY CMSを動かした時のメモ


PHPのバージョンを上げてもPageSpeed Insightsでスコアが100になることはなく、まだまだ対応が必要になる。


余談

今年の末あたりにリリース予定のPHP8では、Jitコンパイラが導入されるらしく、今まで以上の高速化が実現しそうな予感なのでPHP8のリリースを心待ちにしている。

実行時コンパイラ - Wikipedia


余談2

サイトを運営するに当たって、コンパイラが出来る言語の方が良い迷った時期があり、Go言語への移植を考えたこともあったが、PHPでPageSpeed Insightsのスコアが100になったので移植を止めた。