2010-11-06 34 views
3

由於移至新服務器(並更新至Rails 3.0.1),我在服務器上遇到權限錯誤。緩存Rails資產時出現NGinX權限問題

ActionView::Template::Error (Permission denied - /var/www/myapp/releases/20101106093931/public/stylesheets/.permissions_check.81834140.9998.761303): 

/var/www app設置爲CHMOD 755(遞歸)。

<%= stylesheet_link_tag %w{ reset application }, :cache => true %> 

我想這是Rails的嘗試寫服務器上的文件all.css並沒有足夠的權限,但造成的:

,當我嘗試設置:cache => true在我的樣式表的鏈接標籤將出現埃羅目前一切都應該以root身份運行?

有人可以提供任何建議,以解決這個問題嗎?

服務器與乘客3.0.0和Rails 3.0.1

回答

1

Rails應用程序運行Nginx已經沒有權利寫。 cache => true在你的服務器上寫入結果。所以你的乘客過程需要在你的rails應用程序目錄中有正確的。

755將讀取權限和可執行權限添加到您的應用程序,但不能寫入。因此,請將您的Rails應用的用戶所有者更改爲與您的乘客用戶相同。

+0

謝謝,但我仍然感到困惑... rails應用程序正在部署爲root用戶,並且nginx用戶爲「用戶root」; 目前,服務器上沒有其他用戶 – bodacious 2010-11-07 11:01:50