Mod-Pagespeed
使用 mod_cache 和 mod_pagespeed 時的記憶體控制
我正在使用 mod_pagespeed 和 mod_cache。
當 mod_pagespeed 關閉並且 mod_cache 關閉時,我看到以下標題:
記憶體控制:公共,最大年齡=7200,必須重新驗證
當 mod_pagespeed 開啟且 mod_cache 關閉時,我在響應中看到以下標頭:
記憶體控制:max-age=0,無記憶體,必須重新驗證
正如預期的那樣,pagespeed 已經重寫了記憶體控制。
但是,當 mod_pagespeed 開啟並且 mod_cache 開啟時,我看到以下內容:
記憶體控制:公共,最大年齡=7200,必須重新驗證
根據文件:
“預設情況下,PageSpeed 使用 Cache-Control: no-cache, max-age=0 為所有 HTML 提供服務,因為對頁面進行的轉換可能無法長時間記憶體。”
為什麼啟用 mod_pagespeed 和 mod_cache 時 html 被用作可記憶體?
在執行 mod_cache 的 Apache Httpd 2.4.23 執行 mod_pagespeed 1.11.33.2-0 時似乎存在錯誤。
由於某種原因,mod_pagespeed 不會重寫記憶體標頭,從而使 html 可公開記憶體。
我使用的解決方法是讓埠 81 上的虛擬主機作為沒有頁面速度的記憶體伺服器執行。
<VirtualHost *:81> ProxyPass / ajp://tomcat-ipaddress:8009/ ProxyPassReverse / https://final-hostname/ ModPagespeed off RemoteIPHeader X-Forwarded-For CacheEnable disk / CacheHeader on </VirtualHost>
在虛擬主機 443 或 80 上,您可以代理 81 上的主機。
<VirtualHost _default_:443> ProxyPass / http://localhost:81/ ProxyPreserveHost On ModPagespeed on ProxyPassReverse / https://final-hostname/