运行Apache和Passenger的Ubuntu上的Rails应用程序抛出404与params

时间:2015-08-01 04:06:58

标签: apache ruby-on-rails-4 passenger ubuntu-14.04

我正在尝试设置一个服务器来托管我的rails应用程序。我有一个我正在测试,当我在URL中传递params时调用控制器操作时,它给我一个404错误。我在Heroku上部署了这个应用程序,它运行得很好。没有params调用的任何操作都可以在新服务器上完美运行。只有动作通过给我404的params。

我也在Webrick本地在服务器上运行它,它运行正常。它在乘客上运行时只有这个问题。

任何想法可能会导致这个或我应该从哪里开始找到问题?

这是发送的请求 请求GET / groups / 2 / set_and_redirect /%2Fgroups%2F2%2Fgroups_lists HTTP / 1.1

这是404响应的主体 在此服务器上找不到请求的URL / groups / 2 / set_and_redirect // groups / 2 / groups_lists。

修改

这是造成问题的部分原因。具体是link_to group.name。编辑和删除都可以正常工作,设置和重定向在Heroku和Webrick上工作正常。



<% @groups.each do |group| %>
    <h4><div>
      <%= link_to group.name, groups_set_and_redirect_path(:id => group.id, :path => group_list_path(id: group.id) ), remote: true %>&nbsp;&nbsp;
      <%= link_to ('<i class="glyphicon glyphicon-edit"></i>').html_safe, edit_group_path(group),'data-toggle' => 'modal', 'data-target' => "#group-modal#{group.id}", remote: true %>&nbsp;&nbsp;

      <%= link_to ('<i class="glyphicon glyphicon-trash text-danger"></i>').html_safe, group, method: :delete, data: { confirm: 'Are you sure?' }, remote: true %>
    </div></h4>
<%end%>
<div> <%= link_to ('<i class="glyphicon glyphicon-plus text-success"></i>').html_safe, "#group-modal", 'data-toggle' => 'modal', class: 'btn btn-lg' %> </div>
&#13;
&#13;
&#13;

  

我改变了我的路线

     

获取&#39; groups /:id / set_and_redirect /:path&#39; =&GT; &#39;#团set_and_redirect&#39 ;,   :as =&gt; :groups_set_and_redirect

     

     

获取&#39; groups /:id / set_and_redirect&#39; =&GT; &#39;群组#set_and_redirect&#39;,:as =&gt;   :groups_set_and_redirect

     

现在可行了

1 个答案:

答案 0 :(得分:0)

调整routes.rb以便不会出现双斜杠(可能使用path的命名参数)。