Mod_Pagespeedをインストールして、ApacheとNginxのパフォーマンスを最大10倍に高速化


これは、Apacheの最適化とパフォーマンスチューニングに関する継続的なシリーズです。ここでは、ApacheまたはNginx用のmod_pagespeedモジュールと呼ばれる新しいGoogleの製品を紹介します。これにより、Webサイトの読み込みがこれまでになく高速になります。

私はLive(tecmint.com)サーバーでこのモジュールを個人的にテストしましたが、結果は驚くべきものでした。サイトの読み込みが以前よりもはるかに速くなりました。インストールして結果を確認することをお勧めします。

この記事では、公式のバイナリパッケージを使用して、RHEL/CentOS/FedoraおよびDebian/UbuntuシステムにApacheおよびNginxWebサーバー用のGoogleのmod_pagespeedモジュールをインストールして構成する方法を示します。これにより、システムは定期的に更新され、そのまま維持されます。最新の。

Mod_PageSpeedとは

mod_pagespeedは、ApacheおよびNginx Webサーバー用のオープンソースモジュールであり、Webページを自動的に最適化して、HTTPサーバーを使用してWebページを提供する際のパフォーマンスを向上させます。

HTML、CSS、JavaScript、JPEG、PNG、その他のリソースなどのファイルを自動的に最適化するいくつかのフィルターがあります。

mod_pagespeedは、PageSpeed Optimization Librariesで開発され、10万以上のWebサイトにデプロイされ、GoDaddy、EdgeCast、DreamHostなどの最も人気のあるCDNおよびホスティングプロバイダーによって提供されています。

以下を含む40以上の最適化フィルターを提供します。

  1. Image optimization, compression, and resizing
  2. CSS & JavaScript concatenation, minification, and inlining
  3. Cache extension, domain sharding and rewriting
  4. Deferred loading of JS and image resources
  5. and many others…

現在、mod_pagespeedモジュールでサポートされているLinuxプラットフォームは、32ビットおよび64ビットディストリビューション用のRHEL/CentOS/FedoraおよびDebian/Ubuntuです。

LinuxへのMod_Pagespeedモジュールのインストール

上で説明したように、Googleの公式バイナリパッケージを使用して将来のアップデートに備えてインストールしているので、先に進んで、OSアーキテクチャに基づいてシステムにインストールしましょう。

----------- On 32-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm
# yum install at   [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_i386.rpm

----------- On 64-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
# yum install at   [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_x86_64.rpm
----------- On 32-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
$ sudo dpkg -i mod-pagespeed-stable_current_i386.deb
$ sudo apt-get -f install

----------- On 64-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
$ sudo dpkg -i mod-pagespeed-stable_current_amd64.deb
$ sudo apt-get -f install

バイナリパッケージからmod_pagespeedをインストールすると、Googleの公式リポジトリがシステムに追加されるため、yumまたはaptというパッケージマネージャーを使用してmod_pagespeedを自動的に更新できます。

インストールされているMode_Pagespeed

mod_pagespeedがシステムにインストールされているパッケージを見てみましょう。

  1. It will install two modules, mod_pagespeed.so for Apache 2.2 and mod_pagespeed_ap24.so for Apache 2.4.
  2. It will install two main configuration files: pagespeed.conf and pagespeed_libraries.conf (for Debian pagespeed.load). If you change one of these configuration files, you will no longer receive future updates automatically.
  3. A standalone JavaScript minifier pagespeed_js_minify used to minify JS and create metadata for library canonicalization.

Mod_Pagespeedの構成とディレクトリについて

このモジュールは、インストール中に自動的に次の構成ファイルとディレクトリ自体を有効にします。

  1. /etc/cron.daily/mod-pagespeed : mod_pagespeed cron script for checking and installing latest updates.
  2. /etc/httpd/conf.d/pagespeed.conf : The main configuration file for Apache in RPM based distributions.
  3. /etc/apache2/mods-enabled/pagespeed.conf : The main configuration file for Apache2 in DEB based distributions.
  4. pagespeed_libraries.conf : The default set of libraries for Apache, loads at Apache startup.
  5. /usr/lib{lib64}/httpd/modules/mod_pagespeed.so : mod_pagespeed module for Apache.
  6. /var/cache/mod_pagespeed : File caching directory for web sites.

重要:Nginxでは、mod_pagespeedの構成ファイルは通常/ usr/local/nginx/conf /ディレクトリにあります。

Mod_Pagespeedモジュールの構成

Apacheでは、mod_pagespeedはインストール時に自動的にオンになりますが、Nginxでは、nginx.confファイルとPageSpeedが有効になっているすべてのサーバーブロックに次の行を配置する必要があります。

pagespeed on;

# Needs to exist and be writable by nginx.  Use tmpfs for best performance.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

# Ensure requests for pagespeed optimized resources go to the pagespeed handler
# and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }

最後に、ApacheまたはNginxサーバーを再起動して、mod_pagespeedが正しく機能するようにすることを忘れないでください。

ステップ4:Mod_Pagespeedモジュールを確認する

mod_pagespeedモジュールを確認するには、curlコマンドを使用して、次のようにドメインまたはIPでテストします。

# curl -D- http://192.168.0.15/ | less
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: Apache/2.4.6 (CentOS) PHP/5.4.16
...
X-Mod-Pagespeed: 1.9.32.13-0
---
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: nginx/1.4.0
...
X-Page-Speed: 1.5.27.1-2845
...

X-Mod-Pagespeedヘッダーが表示されない場合は、mod_pagespeedが実際にインストールされていないことを意味します。

mod_pagespeedを完全に使用したくない場合は、上部のpagespeed.confファイルに次の行を挿入してオフにすることができます。

ModPagespeed off

同様に、モジュールをオンにするには、上部のpagespeed.confファイルに次の行を挿入します。

ModPagespeed on

上で述べたように、mod_pagespeedをインストールした後、私たちのWebサイトは40%-50%速くロードされます。コメントを介してシステムにインストールした後のWebサイトの速度について本当に知りたいです。

構成の詳細については、https://developers.google.com/speed/pagespeed/module/の公式mod_pagespeedページをご覧ください。