2

自从我在我们的 LAMP 服务器上安装了 mod_pagespeed 后,我一直遇到问题,但我似乎找不到答案

设置:

  • 跨 4 个 LAMP 服务器的负载均衡器
  • http 和 https 页面的混合
  • 产品图像通过挂载的磁盘 (/mnt/media_images/) 在服务器之间共享
  • Apache别名设置:
    别名 /images/media /mnt/media_images
    (即www.example.com/images/media/test.jpg位于服务器上的/mnt/media_images/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上的所有图像,重写文件名并获取它们没有问题,即:

https上,所有非产品图像都可以正常工作,就像在 http 上一样,即:

...但产品图片不起作用。文件名被重写,但访问这些重写的文件名返回 404。如果您采用重写的文件名并简单地将 https:// 更改为 http:// ,则会返回图像。

我已经在非负载平衡设置上对其进行了测试,并且似乎可以正常工作,因此问题似乎是负载平衡器与 https 和指向已安装磁盘的别名的组合。

任何帮助或建议将不胜感激

4

1 回答 1

0

在负载均衡器后面运行实例的情况下,最好使用

ModPagespeedMapOriginDomain origin_to_fetch_from origin_specified_in_html

在 apache2 的可用 conf 文件中限制站点的代码并试一试。

于 2017-05-16T00:59:35.757 回答