2012-04-06 89 views
0

我有一個新的Rails應用程序,它在本地工作,並在我的測試服務器上工作,但不能在生產服務器上工作。奇怪的是,它在一些路線中起作用,但是在其他路線中起作用。奇怪的Rails 3.2 Apache Passenger 500錯誤

我正在使用活動管理員,並且我在active_admin登錄後面設置的所有表單工作正常,但是我的所有公共視圖和主頁都一直顯示500錯誤。

測試和生產中的配置幾乎完全相同,即使我在vhost.conf中設置了日誌記錄,它也不記錄應用程序日誌或apache日誌中的任何內容。

我假設這是一個許可或寶石問題,但似乎無法追查造成它的任何事情。

編輯:另外我應該注意到,當我去他們的時候,我所有的資產都正確地提供了服務。我可以通過URL直接訪問它們,並且可以工作。

Rails控制檯與我的所有對象一起工作。今天我花了很多時間在這個問題上看了很多類似的問題,但都沒有運氣。任何關於如何調試的建議都會很有幫助。提前致謝。

編輯:下面是該我的.conf項:

<VirtualHost *:80> 
    DocumentRoot /var/www/app_admin/public/ 
    <Directory /var/www/app_admin/public> 
          AllowOverride all 
    </Directory> 
    ServerName www.mydomainname.com 
    ServerAlias mydomainname.com 
    ErrorLog /var/log/httpd/app_admin/error.log 
    CustomLog /var/log/httpd/app_admin/access.log common 
</VirtualHost> 
+0

請發佈包含「 ..」的apache站點文件,以及rails應用程序文件夾中的$ ls -altr結果。 – 2012-04-06 22:37:07

+0

不知道我應該顯示-altr的級別: – creativereason 2012-04-06 22:47:56

+0

這裏是應用程序根目錄: drwxr-xr-x 16 apache apache 4096 Apr 6 14:31 app_admin – creativereason 2012-04-06 22:48:06

回答

0

請嘗試添加一個新行Options -MultiViews到「目錄」節點

<VirtualHost *:80> 
    #... 
    <Directory /var/www/app_admin/public> 
    AllowOverride all 
    Options -MultiViews # add this line 
    </Directory> 
    #... 
</VirtualHost> 
+0

感謝您的建議。我剛剛嘗試過。很遺憾沒有變化。仍然提供active_admin文件,沒有別的。 – creativereason 2012-04-06 22:54:00

+0

我看到緩存未命中error.log爲我嘗試打入的任何路線。 像這樣: **緩存:[GET/builders]錯過** – creativereason 2012-04-06 22:55:28

0

我以前就遇到過這一點。

什麼(我相信)造成的怪異是阿帕奇從開發而不是生產中擷取資源,因爲執行的是rails而不是RAILS_ENV =生產rails秒。不知道如何,但它設法從Dev拿起PID。

我最終重新啓動了服務器,避免運行任何類型的rails命令,並在此後工作。

對那個很聳聳肩。