Routing error on webserver but not localhost


#1

I just deployed my app to our webserver and I am getting the Routing
error: Recognition failed for “/ICA/index/13”
But I do not get the error on my localhost.
Note: I am not getting any errors while accessing any other pages, and
yes ICA/index/13 exists

Code

#…/page/list
<%= link_to ‘Preview’,{ :controller => “ICA”, :action => ‘index’, :id
=> page},:popup => true %>

class ICAController < ApplicationController

def index

end

I haven’t made any changes to my route.rb

Like I said, all is well on localhost: http://localhost:3002/ICA/index/
13

But I get the error on the webserver: http://library.oregonstate.edu/
ICA/index/13

Please help.

Thanks in advance -K


#2

I think the problem is in the popup call - but I don’t know how to fix
it. Help please.


#3

bump


#4

This is what my dev logs have to say:

Rendering /var/www/ica/html/trunk/public/…/config/…/vendor/rails/
actionpack/lib/action_controller/templates/rescues/layout.rhtml (404
Page Not Found)

Processing Base#index (for 128.193.163.30 at 2007-02-14 16:10:25)
[GET]
Session ID: 85438c4bf9c30288c64258c6fbc4c6ed
Parameters: {} #why no parameters??

ActionController::RoutingError (Recognition failed for “/ICA/index/
112”):
/vendor/rails/actionpack/lib/action_controller/routing.rb:522:in
recognition_failed' /vendor/rails/actionpack/lib/action_controller/routing.rb:512:inrecognize!’
/vendor/rails/railties/lib/dispatcher.rb:38:in `dispatch’
/var/www/ica/html/trunk/public/dispatch.cgi:10


#5

Thanks - that fixed it. I moved from windows to unix so I guess the
naming convention got me in the switch.

On Feb 14, 4:34 pm, Alex W. removed_email_address@domain.invalid


#6

Kim wrote:

I just deployed my app to our webserver and I am getting the Routing
error: Recognition failed for “/ICA/index/13”
But I do not get the error on my localhost.
Note: I am not getting any errors while accessing any other pages, and
yes ICA/index/13 exists

Code

#…/page/list
<%= link_to ‘Preview’,{ :controller => “ICA”, :action => ‘index’, :id
=> page},:popup => true %>

class ICAController < ApplicationController

def index

end

Rails usually assumes that your controller follow a naming convention
like:

FooController

Would would be fetched in urls with the text:

foo

You have ICAController and are trying to get it with the text “ICA”. I
know linux is more case concious than windows, so maybe that is the
problem.

Try calling your controller “IcaController” and calling it with
“/ica/index/12”