2013-10-04 19 views
0

我正在使用單個頁面應用程序體系結構處理本地計算機上的多個Django項目。要啓動服務器,我在我的/ bin文件夾中有幾個副本,其中包含Django runserver&Firefox - 與多個本地站點在同一端口上單獨運行的緩存衝突?

#!/bin/bash 

python /path/to/app/manage.py runserver 8080 

並且每個腳本都帶有應用程序名稱。這使得應用程序可以通過localhost:8080訪問。另外,我通常在我的網站中有大部分CSS在main.css

我的問題是,無論應用程序服務器在運行,我似乎都遇到了Firefox的緩存問題。有時候頁面會加載幾乎沒有CSS樣式,但jQuery UI元素將被初始化,並且我可以與應用程序進行某種交互,儘管功能和樣式被嚴重破壞了。刷新頁面顯示沒有改進,並且控制檯中不顯示任何錯誤。

清除緩存並更改腳本中的端口似乎可以解決問題,但這需要我爲每個項目都設置書籤,而對於所有項目都有一個單一的localhost:8080 URL會非常方便。

有沒有人遇到過這個問題,除清除緩存和更改端口之外,是否有解決方案?

回答

1

此線程討論的方法來防止由開發服務器Django中提供的內容的客戶端緩存:

Fighting client-side caching in Django

我喜歡簡單地禁用瀏覽器的緩存不過,看到我花那麼多時間在開發中我不想打擾在我自己的代碼中試圖阻止它的麻煩。

一個簡單的網上搜索「如何在Firefox中禁用緩存」想出了這一點:

http://support.mozilla.org/en-US/questions/764993

我敢肯定,搜索同樣的事情不同的瀏覽器也會給你預期結果。

編輯:

這些傢伙似乎也相當深入進去了解如何使用Django開發服務器時,防止靜態文件緩存。

Turn off caching of static files in Django development server

0

就這樣添加的東西到/ etc/hosts文件:

127.0.0.1 site1.dev 
127.0.0.1 site2.dev 

訪問site1.dev:8080,現在site1的在瀏覽器自身的緩存和Cookie(會話)。