2014-01-15 111 views
0

我只在我的生產服務器上收到此錯誤。當我執行「刪除」請求方法時,它只會返回'405不允許',並且它應該返回一些UJS。它在我的開發機器上工作正常。Rails&Nginx刪除請求 - 405不允許

下面是我在我看來使用的代碼。這將會返回一些JS。

link_to("Delete", image, method: :delete, remote: true, data: {confirm: "Are you Sure?"}) 

底部的鏈接是我有我的nginx配置,因爲我在那裏使用capistrano任務。我搜索了一下,看看有什麼可以解決這個問題,但我發現有很多已經超過3歲,似乎沒有做任何事情。例如:http://andre.arko.net/2011/06/30/rails-page-caching-nginx-and-restful-apis/

任何想法都會很棒,因爲我目前迷路了。我的服務器配置是:Ubuntu的12.04,獨角獸,Nginx的,軌道4,紅寶石2

https://github.com/kalys/capistrano-nginx-unicorn/blob/master/lib/generators/capistrano/nginx_unicorn/templates/nginx_conf.erb

回答

0

我建議清理通過刪除IF語句和做NGINX文件301重定向來代替。在此之後,請注意應用程序中的錯誤頁面邏輯,如果要保留錯誤頁面邏輯,請將其移入服務器塊。這裏是我的工作nginx.conf作爲例子。

https://gist.github.com/Austio/6399964

+0

我試過刪除if語句,但仍然得到相同的響應。你還有其他建議嗎?我剛剛上傳了我的nginx.conf文件 - https://gist.github.com/petermumford/8442888 – Peter

+0

我發現問題'location〜^ /(assets | images | javascripts | stylesheets | swfs | system)/{'應該是'location ^〜/(assets | images | javascripts | stylesheets | swfs | system)/ {'我所做的只是改變'〜^'。希望這是一個錯字,或者有這樣一個原因呢? @Austio,你知道嗎? – Peter

+0

好眼,〜^不是nginx的位置語法選項,但^〜是。 http://wiki.nginx.org/HttpCoreModule#location – Austio

相關問題