编程语言
首页 > 编程语言> > php-Zend Server“缓存” JS和CSS文件

php-Zend Server“缓存” JS和CSS文件

作者:互联网

我正在Vitrualbox的CentOS VM中运行Zend Server,但是链接的JS和CSS资产被“缓存”时出现问题.我之所以说“已缓存”,是因为它们实际上并不是被缓存的,而是在我向JS或CSS文件添加内容时它们被破坏了,并且没有出现更改.而是在文件后附加一堆坏字符,例如.

layout.phtml(zend框架模板)

$this-> headScript()-> appendFile(‘/js/admin/product.js’,’text / javascript‘);

这将呈现:

<script type="text/javascript" src="/js/admin/product.js"></script>  

products.js

        //re-add scrolling handles
        scrollThumbs.reSortThumbs(ul);
        product.moveFileInput(ul);
    };
};��������������������������������������������������

如果我从JS或CSS文件中删除内容,则结果是文件不完整,而不是上面概述的不良字符.

我已经关闭了所有形式的Zend缓存,甚至关闭了Zend Optimizer.我已经删除了浏览器缓存,并尝试了几种浏览器.

我已将ssh’d进入服务器,并仔细检查了文件,文件格式正确且包含更改.我尝试过重新启动Zend Server(/usr/local/zend/bin/zendctl.sh重新启动)和Apache(服务httpd重新启动)

解决此问题的唯一方法是重新启动整个操作系统(重新引导).有趣的是,如果我删除更改,它可以恢复正常工作.我只能假设服务器端某处发生某种形式的缓存.

解决方法:

事实证明,这是一个Virtualbox共享文件夹问题,而不是与Zend Server唯一相关的一个问题,而通常是Apache.

修复来自Shared folder in VirtualBox for Apache

将EnableSendfile添加到您的vhost文件中,例如.

<VirtualHost *:80>
    DocumentRoot "/mnt/your/shared/dir"
    ServerName Default

    <Directory "/mnt/your/shared/dir/public">
        EnableSendfile off
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

标签:caching,zend-studio,zend-server,zend-framework,php
来源: https://codeday.me/bug/20191101/1982649.html