Php 其中';应用的缓存是Apache还是浏览器?
我正在运行安装了CentOS 5.8的VirtualBox服务器,为希望后端使用1366px x 768px固定宽度布局而不是现有的1024px x 768px的客户开发一个新的管理界面Php 其中';应用的缓存是Apache还是浏览器?,php,firefox,caching,apache2,virtualbox,Php,Firefox,Caching,Apache2,Virtualbox,我正在运行安装了CentOS 5.8的VirtualBox服务器,为希望后端使用1366px x 768px固定宽度布局而不是现有的1024px x 768px的客户开发一个新的管理界面 httpd server is 'stock' Apache/2.2.3 as supplied as part of CentOS 5.8 php is 'stock' PHP 5.3.3 as supplied as part of CentOS 5.8 大部分工作都是对css文件进行更改,以利用额外的
httpd server is 'stock' Apache/2.2.3 as supplied as part of CentOS 5.8
php is 'stock' PHP 5.3.3 as supplied as part of CentOS 5.8
大部分工作都是对css文件进行更改,以利用额外的宽度,因为这一切都与客户端的布局有关
问题是,文件被缓存在某个地方,而我没有看到对css文件所做的更改。Shift F5和Ctrl F5在客户端浏览器上没有区别
这让我发疯,而且要花很长时间才能解决,所以我在这里发帖子是为了呼救。我已经尝试了一些关于.htaccess调整和向链接css文件添加参数的假定“解决方案”,但都没有效果
我觉得这是一个httpd问题,但许多所谓的“专家”都坚持认为这是一个浏览器问题。我已经在MS Explorer、Opera、Chrome和Opera Mobile Emulator中进行了测试,但没有看到css在任何情况下立即发生变化
我希望有人能帮忙,因为这一定会让其他开发人员感到沮丧
如何禁用VirtualBox CentOS环境和Firefox v17上的所有缓存?缓存可以发生在多个级别:服务器、浏览器或两者之间(代理、ISP、路由器等) 您是否安装了任何服务器端缓存软件?清漆、Pagespeed或类似的东西 您可以通过向文件名中添加一个可变URL查询字符串来中断缓存,例如加载
mystyle.css?r=34234235
,而不仅仅是mystyle.css
。更改该数字将导致强制将其作为新URL重新加载,而无需缓存,无论在何处进行缓存
直接回答您的问题:在Firefox中,您可以通过打开选项窗口、高级选项、网络选项卡来最终清除缓存。这里有一个“清除缓存”按钮。如果这是一个浏览器缓存问题,这应该可以为您解决这个问题。这里还有一个管理缓存大小的功能。将此值设置为零,以防止firefox缓存任何内容(但请做好准备,让它加载页面的速度大大降低)。谢谢
这不是路由器或ISP的问题,因为服务器只是托管在VirtualBox容器中,文档根指向挂载的共享文件夹
我使用这种方法是因为我必须支持一些不同的网站,一些主机运行PHPV5.2,另一些主机运行v5.3。这也意味着我可以很容易地检查有关弃用函数的问题
我尝试使用addon查询字符串作为样式表名称,但是“视图源”显示了新名称,而内容仍然是“旧”的样式表
这不是一个浏览器问题,因为Chrome、IE和Firefox都显示了相同的问题,所以这肯定是Apache服务器的问题
没有安装服务器端软件,它是CentOS 5.8 DVD中的一个简单的“yum install httpd*”
通过创建work-in-progress.php并在文件顶部添加以下内容,我绕过了缓存css的问题:
<?php
header("Content-type: text/css; charset: UTF-8");
?>
然后,我使用.php扩展名将样式表作为文件中的最后一项加载
<link rel='stylesheet' type='text/css' href='work-in-progress.php'>
这有点俗气,但至少对css有效
我仍然需要在Apache配置中解析要更改的参数,因为图像也在缓存中,除非每次修改背景图像时都更改文件名,否则仍然会收到“旧”图像
我尝试在做出更改后重新启动服务httpd,但这似乎没有任何影响。我也遇到了同样的问题。我在这里找到了解决方案: 问题是VirtualBox的共享文件夹不完全支持
sendfile()
,所以您必须在apache/nginx配置文件中关闭它:
apache: EnableSendfile off
nginx: sendfile off;
它对我有用