勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

gzip圧縮とキャッシュをhttpd.confで設定する方法

   2026/08/20  Apache サーバー

今まで共用サーバーで使っていたWordPressをVPSに移した。せっかくなのでサーバーを弄って高速化しようと思ったので作業手順のメモ。行ったのはgzip圧縮とキャッシュの設定になる。

 

対応方法

まずhttpd.confを開く。

場所が分からない場合は以下で探す。

find / -name httpd.conf

gzip圧縮

<Location />
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI\.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary

AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rdf+xml
</Location>

キャッシュ設定

<Directory "/var/www/html">
ExpiresActive On
ExpiresByType image/gif "access plus 30 days"
ExpiresByType image/jpeg "access plus 30 days"
ExpiresByType image/png "access plus 30 days"
ExpiresByType image/icon "access plus 60 days"
ExpiresByType image/ico "access plus 60 days"

ExpiresByType text/html "access plus 30 days"
ExpiresByType text/css "access plus 10 days"
ExpiresByType text/xml "access plus 60 minutes"
ExpiresByType text/javascript "access plus 10 days"
ExpiresByType application/javascript "access plus 10 days"
ExpiresByType application/x-javascript "access plus 10 days"
</Directory>

どちらもファイルの末尾に追記した。

キャッシュ設定のDirectory部分はキャッシュを聞かせたいディレクトリを任意で入れる。

尚、以下で再起動をかけると反映される筈。

service httpd restart

PageSpeed Insightsで設定前と設定後を比べると分かりやすい。

 - Apache サーバー

  関連記事

HSTS(HTTP Strict Transport Security)の設定方法
HSTS(HTTP Strict Transport Security)の設定方法

あるサイトのセキュリティ対策としてHSTS(HTTP Strict Transp ...

画像やPDF等のファイルへの直接アクセスは禁止し、PHP経由のみ表示やダウンロードを可能にする
画像やPDF等のファイルへの直接アクセスは禁止し、PHP経由のみ表示やダウンロードを可能にする

ファイルアップローダーを作成する案件があり、アップロードしたファイルは「http ...

apacheを再起動する際に影響を少なくする方法(graceful)
apacheを再起動する際に影響を少なくする方法(graceful)

apacheを再起動するとクライアントとの通信が強制的に切断されてしまう。その影 ...

apacheで指定した期間(日時)のアクセスログを抽出する方法
apacheで指定した期間(日時)のアクセスログを抽出する方法

apacheのaccess_logとerror_logで特定日時内のログのみを確 ...

htaccessファイルにて特定のIPの場合のみBasic認証無し、その他の場合はBasic認証有りにする方法
htaccessファイルにて特定のIPの場合のみBasic認証無し、その他の場合はBasic認証有りにする方法

開発中の環境で指定したIPからのアクセスはBasic認証無しに、それ以外のアクセ ...