【问题标题】:How to disable Apache caching in Apache-XAMPP?如何在 Apache-XAMPP 中禁用 Apache 缓存?
【发布时间】:2012-06-06 13:31:28
【问题描述】:

我的 XAMPP-Apache 遇到了这个奇怪的问题。 我正在制作一个登录系统,将表单发布到redirect.php 页面。 我更新了redirect.php,但它仍然向我显示相同的旧结果。 甚至没有一行可以将其重定向(标题 fn 调用)到另一个页面,但它仍然重定向到 home.php 页面,就像它在旧脚本中所做的那样。 我尝试清除浏览器的缓存并更改浏览器进行测试,但没有奏效……我什至尝试重新启动服务器,但没有任何改变。 请帮我解决....

【问题讨论】:

  • 默认情况下不缓存 PHP 脚本 - 您的代码可能存在其他问题
  • 当我尝试在 localhost 上缓存时,我不小心将他的 op_cache.dll 保留在 php.ini 中。我只是将这一行注释掉,它的工作原理与之前的 ;zend_extension=php_opcache.dll 相同。

标签: php apache caching xampp


【解决方案1】:

试过了吗?应该在 .htaccesshttpd.conf 和 VirtualHost 中都可以工作(如果你已经从 httpd.conf 中包含了它,通常放在 httpd-vhosts.conf 中)

<filesMatch "\.(html|htm|js|css)$">
  FileETag None
  <ifModule mod_headers.c>
     Header unset ETag
     Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
     Header set Pragma "no-cache"
     Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
  </ifModule>
</filesMatch>

100% 防止文件被缓存

这类似于 google 广告如何使用标头 Cache-Control: private, x-gzip-ok="" > 防止代理缓存广告和 客户。从 http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html

如果您使用的扩展名不是 .html,则可以选择为要检索的模板文件添加扩展名。

【讨论】:

  • @cascading-style 请接受答案。我需要赏金;)
【解决方案2】:

如果请求相同,您可能会收到来自缓存的响应。

解决方案 1:

您可以尝试通过添加例如时间戳来获得每次唯一的请求。

解决方案 2(并非每个服务器都接受 - 取决于服务器设置):

您可以为您的请求设置标头参数,例如:

'If-Modified-Since' = 'Mon, 26 Jul 1997 05:00:00 GMT'
'Cache-Control' = 'no-cache'
'Pragma' = 'no-cache'

解决方案 3:

玩服务器配置:)

【讨论】:

    【解决方案3】:

    在 httpd.conf 中评论这部分:

    LoadModule cache_module modules/mod_cache.so

    【讨论】:

    • @Micha 回答您的问题:在文件 /opt/lampp/etc/httpd.conf 中查找“LoadModule cache_module modules/mod_cache.so”行并在行首添加 # .保存文件并重新启动 apache 服务器。
    • 我还不得不评论“cache_disk_module modules/mod_cache_disk.so”这一行,因为 apache 在日志中抱怨它,拒绝启动。
    猜你喜欢
    • 2015-08-28
    • 2014-05-18
    • 2011-03-11
    • 1970-01-01
    • 2012-09-22
    • 2017-02-20
    • 2014-12-22
    • 2014-07-04
    • 1970-01-01
    相关资源
    最近更新 更多