2014-06-30 92 views
3

我們從開發服務器切換到生產服務器,但試圖爲sorl thubmnail使用相同的緩存。在我們嘗試解決問題時,我們幾乎搞砸了緩存,刪除了所有緩存的圖像。重置sorl Django站點的縮略圖

Sorl認爲已找到縮略圖,但沒有縮略圖,因此會顯示錯誤圖像。嘗試從其URL中直接訪問縮略圖圖像會導致404錯誤。我想要做的就是重置sorl,就像我第一次開始使用它一樣。 我試圖運行python manage.py thumbnail cleanuppython manage.py thumbnail clear,但是sorl仍然會返回諸如「http://www.whatever.com/media/cache/84/0f/840fa03745a82238b980f4ceb188b110.jpg」之類的網址,其中不存在圖像。

我認爲索爾的要點是尋找一個縮略圖,如果一個不存在,它會創建一個。

我甚至嘗試從我的數據庫中刪除thumbnail_kvstore表,它什麼也沒有改變。我試着將THUMBNAIL_KVSTORE設置更改爲Redis,並且它也沒有改變。 Sorl仍然保留不存在的縮略圖。

我可以創建新的縮略圖,然後這些縮略圖可以正常工作。

如何在我的Django項目中完全重置sorl,以便當它通過我的網站時,它會再次生成縮略圖?

謝謝您的幫助

編輯:我看着它一點點,我覺得這個問題可能與在生產環境中創建縮略圖。在我的開發服務器上,我運行thumbnail clear,然後該站點重新加載縮略圖。我的生產服務器使用ngin-x和uWSGI運行,DEBUG關閉。

LATE EDIT:我的問題是一個權限。生產服務器沒有權限寫入包含緩存的驅動器,而開發服務器卻沒有。

+0

你解決這個問題? –

+0

@Brian是的,我解決了我們遇到的問題;但是,我不認爲我們是通過重新設置索爾來做到這一點的。正如在「最新編輯」中提到的那樣,問題是非常不相關的。這就是爲什麼我沒有把它作爲答案。 – Johndt6

回答

1

同樣的事情發生在我身上,我所做的是改變圖像的大小,因此它可以重新加載它們:

{% thumbnail image.original "x301" as thumb %}