ftp编辑后的Apache文件缓存

时间:2014-10-24 14:48:23

标签: php apache caching ftp

我遇到了这种奇怪的行为,在我通过FTP连接的共享主机上,当我编辑某个文件(并保存它)时,至少需要几分钟才能使该更改生效。例如,我将index.php文件放入行echo "test";die;并保存:程序(我使用的是文件zilla)显示文件已上传到服务器。为了确保,我正在做cat index.php(我通过putty连接),我可以看到事实上的变化已经完成。但是,猜猜看,当我在浏览器中打开时,它就像以前一样工作(没有显示我的“测试”)。但我只是等待几分钟刷新页面,它显示我“测试”。浏览器缓存我删除了(虽然不认为这种情况很重要,也试图通过CTRL + F5刷新页面)但毕竟只有几分钟后更改才生效。同样的事情当我删除那一行并仔细检查它是否被保存时,再过几分钟我仍然看到那个回声,当文件中什么时候都没有。

那么,有没有这样的事情,apache有某种缓存,所以即使我更改了物理驱动器中的文件之后它只使用了那里的文件并且只在几分钟之后更新了缓存?

由于

2 个答案:

答案 0 :(得分:0)

我相信如果Varnish设置正确,您可以通过PHP将其关闭。

header('Pragma: no-cache');
header('Cache-Control: private, no-cache, no-store, max-age=0, must-revalidate, proxy-revalidate');
header('Expires: Tue, 04 Sep 2012 05:32:29 GMT');

答案 1 :(得分:0)

正在保存文件,但php脚本没有改变?

在.htaccess中试试这个 - 也许是因为新的php版本默认启用了apc缓存:

php_flag opcache.enable关闭