1
我們最近將一個較舊的Rails 2.3網站從CentOS 6服務器遷移到CentOS 7服務器。自轉換之後,幾頁文件就不會被緩存。Rails 2.3頁面不應該放在Passenger上時被緩存5
下面是在Web服務器上的細節變化:
- 舊系統客運4.x中,在新的客運5.0.30。
- 舊系統的Apache,新的是Nginx的1.10.1
- 該應用程序還沒有改變,不是添加config.ru客運等5
- 我們正在紅寶石REE 運行的Rails 2.3.17
- 我們正在運行Memcached進行一些片段緩存,但不是使用這些頁面。
的事情,我們曾嘗試:
- 如果我們修改視圖,所做的更改不會顯示,直到重新啓動。視圖模板被緩存。
- 我們禁用乘客5的渦輪增壓。它沒有幫助。
- 我們從Memcached中刪除了所有的密鑰。它沒有幫助。
- 在磁盤上查找和刪除Rails緩存 - 我們沒有找到任何(也不應該)。
更多細節:
- 我們舉辦其他幾個的Rails 2.3的Rails的3.X/4.x的網站網站和數十人沒有這個問題。
- 如果重新啓動Nginx或
touch tmp/restart.txt
,會顯示更改。 - Nginx的日誌文件顯示200
- 生產Rails日誌文件顯示數據庫和視圖創建的時間。
看起來它是在生成輸出,但是它從Rails,Passenger和Nginx之間的某種緩存中提取。
這可能是什麼原因造成的?
您是否直接在生產環境中修改視圖,而不是經歷「完整」部署過程(其中一步是反彈應用服務器)?這適用於您的其他應用程序? –
什麼樣的變化被阻止?我在Rails 2.x模型關係中遇到過類似的問題,其中has_many或類似的關係緩存在啓動web服務器時的狀態(就好像db本身被緩存,儘管不是)。 –
@SergioTulentsev我們修改了視圖,沒有完整的部署或彈出服務器。我懷疑這些緩存視圖模板緩存。 –