2012-03-26 58 views
2

我不知道這是Ubuntu,VirtualBox或nginx的問題。VirtualBox上的nginx Ubuntu客服提供陳舊的內容

我在Ubuntu上運行nginx,它是Windows 7上的VirtualBox guest。Windows 7文件夾作爲自動安裝的只讀共享文件夾安裝在VirtualBox中。 Ubuntu將文件夾視爲/ media/sf_jsource

現在,如果我在Windows 7上編輯該文件夾中的文件,Ubuntu上的shell命令(cat)會看到新內容。這似乎意味着VirtualBox和Ubuntu正在撿起新的改變。

但是,在Ubuntu上運行的nginx服務器繼續提供陳舊的內容。這表明問題出在nginx緩存文件上。我搜索了一下,看到了一些條目(從2010年,2011年)禁用nginx緩存。但是,我沒有在nginx配置中啓用任何緩存,並且我沒有看到任何/ var/cache/nginx或/ opt/cache/nginx目錄進行清除。

現在,有趣的是重新啓動nginx並沒有解決問題。我必須重新啓動nginx的Ubuntu guest才能看到新的內容,這是沒有意義的,因爲在重啓之前,Ubuntu中的貓看到了更改。

幾乎一切(nginx的,Ubuntu的,VirualBox)是最新的版本爲2012年初

+0

非常感謝! – 2013-03-30 14:56:05

+0

我遇到了這個問題在OSX上運行Vagrant。正如@BenitoCiaro在/ etc/nginx/nginx.conf中關閉'sendfile'所提到的那樣解決了這個問題。 – 2014-10-31 17:01:36

回答

0

一些事實的:如果你沒有啓用

  1. 緩存在nginx的,那麼nginx的將不會提供緩存的內容。

  2. 如果您重新啓動nginx,任何情況下都會丟棄任何緩存的內容。

結論: 緩存發生在請求週期多層次從瀏覽器本身出發。由於事實表明緩存不是Nginx的,所以您需要從瀏覽器開始查看其他可能的緩存位置。

+0

這是一個Nginx相關問題+權限。我有類似的問題,我現在使用Apache2 ;-(不知道爲什麼順便說一句。 – 2013-03-30 14:49:25

相關問題