2015-03-13 29 views
0

我嘗試使用passenger和nginx部署rails應用程序。 所有工作正常,但是當我要發送DELETE要求這樣的例子:使用nginx,passenger和rails啓用DELETE方法

<%= link_to "Sign out", sign_out_path, method: :delete %> 

在DEVELOPPEMENT它工作正常,但在生產中使用nginx的它做一個GET請求代替。因此,邏輯上我得到這個錯誤:

ActionController::RoutingError (No route matches [GET] "/sign_out") 

我已閱讀,nginx的需要與http_dav_module被編譯成能夠使用DELETE方法。

我做到了,加入nginx的配置文件中的模塊,像這樣:

server { 
    listen  8080; 

    server_name framework1.local.42.fr; 
    passenger_enabled on; 

    location/{ 

    root   /rails/Framework00/public 
    dav_methods PUT DELETE; 
    dav_access group:rw all:r; 
    } 

,但我得到了同樣的事情,DELETE方法不起作用。

任何想法我可以解決這個問題?

回答

0

發生這種情況是因爲您在生產中存在js錯誤。應該發送DELETE請求的JavaScript不起作用。

相關問題