[英]Controlling cache on a cookie free domain
我的情況
我遵循雅虎YSlow的建議,我想將我的靜態內容存儲在子域中。 但是,我想使用函數filemtime()
來控制文件的緩存。
問題
問題是這個函數似乎不適用於子域。
我的問題
有沒有辦法實現我的兩個目標? 或者你對我有什么建議嗎? 任何解決方案或解決方法都將受到高度贊賞。
更新
函數filemtime()
現在正在子域上工作。 我輸入路徑時犯了一個錯誤。 但它仍然沒有在其他領域工作。
錯誤如下:
警告:filemtime()[function.filemtime]:第7行/mywebsite/public_html/index.php中的../../otherdomain.com/file.css的stat失敗
您可能已經為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年就足夠了)。
然后,當您更新此文件時,版本控制將更改,打破緩存並允許客戶端下載新副本。
我通過在另一個域上創建一個PHP文件並向該文件發送請求以檢查文件的修改時間來解決該問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.