2011-03-04 97 views
0

我的情况
控制缓存我下面雅虎的YSlow的的意见,我想我存储在一个子域静态内容。但是,我想使用功能filemtime()来控制文件的缓存。上的cookie免费域名

问题
的问题是,这个功能似乎并没有放在子站点。

我的问题
有没有办法达到我的目标?或者你有什么建议吗?任何解决方案或解决方法将不胜感激。


更新
功能filemtime()正在子域了。我在输入路径时犯了一个错误。但它仍然不适用于其他领域。

误差如下:

警告:filemtime()[function.filemtime]:STAT在/ mywebsite失败../../otherdomain.com/file.css /第7行

+0

我用新信息更新了我的问题。 – 2011-03-04 09:36:31

回答

0

我已经通过在其他域上创建PHP文件并向该文件发送请求来检查文件的修改时间来解决该问题。

2

的public_html/index.php文件,您可能已经为domain.com设置cookie,那么他们将被传递给sub.domain.com

您是否可以使用全新的域名cdndomain.com

对于使用文件修改缓存克星,试试这个...

<?php 
$filename = 'script.js'; 
?> 

<script type="text/javascript" src="<?php echo $filename . '?' . filemtime($filename); ?>"></script> 

然后确保script.js在未来将到期标题的方式(1年就足够了)。

然后,当您更新此文件时,版本会改变,打破缓存并允许客户端下载新副本。

+0

@alex:我可以,但是我仍然会用'filemtime()'函数来解决这个问题。 – 2011-03-04 09:02:00

+0

@Michiel查看我的更新:) – alex 2011-03-04 09:02:29

+0

@alex:我的问题是'问题是这个函数似乎没有在子域上工作。我从一个域连接到另一个域,即'$ filename ='http://otherdomain.com/script.js';'。当我调用函数'filemtime()'时,它会给出一个错误。顺便说一下,购买一个域以在多个网站上放置多个静态内容是否是一个好主意?像“site1.mystaticdomain.com”? – 2011-03-04 09:07:14