【问题标题】:Cache big PHP files in client browser - status '200 ok' instead of '304 not modified' - Apache在客户端浏览器中缓存大型 PHP 文件-状态“200 ok”而不是“304 未修改”-Apache
【发布时间】:2017-01-28 02:23:15
【问题描述】:

我在根目录下修改了.htaccess

ExpiresActive On
ExpiresDefault "access plus 300 seconds"

ExpiresByType text/css "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 day"
ExpiresByType text/php "access plus 1 day"
ExpiresByType text/html "access plus 1 day"

我还将这些行添加到 Apache 文件配置 (httpd.conf):

LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule deflate_module modules/mod_deflate.so

但是浏览器似乎没有缓存katalog.php

我试图通过 php 更改标题,但它只是使文件崩溃,我无法访问它。

我想用“no-cache”缓存它(以检查它是否仍然相同),因为每次下载它都需要时间(13.3MB ...),即使用户按下“退格”按钮也是如此。 ..

【问题讨论】:

  • katalog.php 的响应内容类型是什么?
  • 你想像静态文件一样缓存php脚本???
  • Roland : 这是一张大桌子——大约 1500 行 25 列
  • jsxqf : 我想缓存结果,是的,所以当用户返回这个页面并且它没有被修改时(我的意思是没有删除或添加行)它不会完全重新加载页面(然后它避免下载那些 13MB)
  • 您知道当您打开开发人员工具时,默认情况下会禁止缓存...?您可以在工具设置中更改它...

标签: php apache .htaccess http caching


【解决方案1】:

终于成功缓存了这么大的html内容 我用这个:jonasjohn.de/sn-ps/php/caching.htm (不使用电子标签)和 apcu php 扩展来存储应用程序范围的变量。 (检查目录是否已更新:我将应用范围变量与 $_session 变量进行比较,如果它们相同,我不加载内容)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 2010-10-29
    • 2019-05-08
    • 1970-01-01
    • 1970-01-01
    • 2019-07-12
    • 2022-01-06
    相关资源
    最近更新 更多