LAMP サーバー全体に mod_pagespeed をインストールしてから問題が発生しましたが、答えが見つからないようです
設定:
- 4 つの LAMP サーバーにまたがるロード バランサー
- http ページと https ページの混在
- 製品イメージは、マウントされたディスク (/mnt/media_images/) を介してサーバー間で共有されます
- Apache エイリアスのセットアップ:
エイリアス /images/media /mnt/media_images
(つまり、サーバーの/mnt/media_images/test.jpgにあるwww.example.com/images/media/test.jpg ) - まったく同じ構成ですべてのサーバーにインストールされた mod_pagespeed:
ModPagespeed オン ModPagespeedRespectXForwardedProto on ModPagespeedMapOriginDomain "http://localhost" "http://www.example.com" ModPagespeedMapOriginDomain "http://localhost" "https://www.example.com" ModPagespeedMaxInlinedPreviewImagesIndex 20 ModPagespeedEnableFilters remove_comments,collapse_whitespace,combine_javascript,insert_dns_prefetch,defer_javascript,insert_image_dimensions,lazyload_images
問題:
mod_pagespeed はhttp上のすべての画像を最適化し、ファイル名を書き換えて問題なく取得します。
- http://www.example.com/images/layout/example1.jpgからhttp://www.example.com/images/layout/example1.jpg.pagespeed.ce.Sh5dWv3czL.jpg
- http://www.example.com/images/media/example2.jpgからhttp://www.example.com/images/media/example2.jpg.pagespeed.ce.Sh5dWv3czL.jpg
httpsでは、製品以外のすべての画像が http と同様に正常に機能します。つまり、次のようになります。
- https://www.example.com/images/layout/example1.jpgからhttps://www.example.com/images/layout/example1.jpg.pagespeed.ce.Sh5dWv3czL.jpg
...しかし、製品画像は機能しません。ファイル名は書き換えられますが、これらの書き換えられたファイル名にアクセスすると 404 が返されます。書き換えられたファイル名を取得し、単に https:// を http:// に変更すると、画像が返されます。
負荷分散されていないセットアップでテストしたところ、うまくいくように見えたので、https を使用したロードバランサーと、マウントされたディスクを指すエイリアスの組み合わせに問題があるようです。
どんな助けや提案も大歓迎です