2012-11-28 40 views
0

我正在運行安裝了CentOS 5.8的VirtualBox服務器,爲希望後端使用1366px x 768px固定寬度佈局而不是現有1024px x 768px的客戶開發新的Admin界面。正在應用的緩存在哪裏 - Apache或瀏覽器?

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 Exploder,Opera,Chrome和Opera Mobile Emulator中進行了測試,並且沒有立即看到css的變化。

我希望有人可以提供幫助,因爲這肯定會讓其他開發者感到沮喪。

如何禁用VirtualBox CentOS環境和Firefox v17上的所有緩存?

回答

0

緩存可以發生在很多層次上:服務器,瀏覽器或中間(代理,你的ISP,你的路由器等)。

您是否安裝了任何服務器端緩存軟件?清漆,分頁或類似的東西?

您可以通過向文件名添加可變的URL查詢字符串來破壞緩存 - 例如,加載mystyle.css?r=34234235而不是僅僅加載mystyle.css。無論高速緩存在哪裏完成,更改數字都將導致強制重新加載爲不帶緩存的新URL。

要直接回答您的問題:在Firefox中,您可以通過打開選項窗口,高級選項,網絡選項卡來明確清除緩存。這裏有一個「清除緩存」按鈕。如果這是瀏覽器緩存問題,這應該可以解決您的問題。這裏還有一個功能來管理緩存大小。將其設置爲零以防止Firefox緩存任何內容(但要爲其加載頁面慢很多)做好準備。

0

謝謝。

這不是路由器或ISP問題,因爲服務器只是在VirtualBox容器中進行託管,並且文檔根目錄指向已安裝的共享文件夾。

我正在使用這種方法,因爲我必須支持幾個不同的網站,並且一些主機正在運行php v5.2,而其他則在v5.3上。這也意味着我可以輕鬆檢查有關已棄用功能的問題。

我嘗試使用插件查詢字符串的樣式表名稱,但是'查看源'顯示新名稱,但內容仍然是'舊'表。

這不是瀏覽器問題,因爲Chrome,IE和Firefox都顯示相同的問題,所以它肯定是Apache服務器。

沒有安裝服務器端軟件,它是CentOS 5.8 DVD中的一個簡單的'yum install httpd *'。

我已經通過創建工作在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重新啓動後進行更改,但這似乎沒有任何影響。