いつもご覧頂き、ありがとうございます。アイフラッグ基盤担当のTTです。一ヶ月近くも更新が止まっていましたが、あまり気にしないでmod_pagespeedの不定期連載の第八回を開始します。
本日も弊社のホームページサービスへの導入事例を基に、役に立つかもしれないちょっとしたことを綴って参ります。
今回は、弊社が運営しておりますアイフラッグデンキのショッピングカート画面を例に説明いたします。
弊社のカート画面ではHTTPS通信が必須で、HTTPで通信しようとするとHTTPSにリダイレクトされます。
次のURLにアクセスして、httpsにリダイレクトされることを確認してください(別画面で開きます)。
http://cart.xaas3.jp/m8811894/cart/shoppingCartList/add/domain/iflagdenki.jp
このリダイレクトの実装は、例えばmod_sslを利用している場合にはサーバー変数HTTPSで判定すると思います。次の例のようにサーバー変数HTTPSが存在していなければ、HTTPSにリダイレクトします。
例:
RewriteCond %{HTTPS} ^$
RewriteRule /(.*)$ https://%{HTTP_HOST}/$1 [L]
mod_pagespeedが画像ファイルなどを要求するときにはHTTPで要求しますが、この判定でHTTPSにリダイレクトしてしまいます。
ブラウザの処理
http://example.com/index.html ⇒ リダイレクト ⇒ https://example.com/index.html
mod_pagespeedの処理(リダイレクトを抑止したい!)
http://expample.com/sample.css ⇒ リダイレクト ⇒ https://example.com/sample.css
このようなケースで使用するのがパラメータModPagespeedCustomFetchHeaderで、以下のように利用します。
ModPagespeedCustomFetchHeaderの利用例:
ModPagespeedCustomFetchHeader HTTPS on
この設定により、mod_pagespeedのリクエストのヘッダに「HTTPS: on」が付与されるためリダイレクトを回避することができます。
この他にも、「mod_pagespeedからのリクエストに専用のヘッダを追加してアクセスログを分ける。」といった用途にも利用可能です。全てのmod_pagespeedからの要求にはこのヘッダが付与されるので、その点だけ注意してください。
最後に本家URLを載せておきます。
http://developers.google.com/speed/docs/mod_pagespeed/config_filters#custom-fetch-headers
2013-04-19 14:47:42
mod_pagespeedのTips
| コメント(0)
| トラックバック (0)