Problem w/ routes.rb


#1

I am trying to develop a new webapp using Rails 1.2.1. I am installing
it onto a production web server running Apache w/ fastcgi. The server
already has some older webapps running on it using an older version of
Rails. The apps are not installed in the document root; they each have
their own subdirectory which is a symlink for the apache document root
to the “public” directory of each app; i.e.:
https:///calendar
https:///app2
https:///app3

When installing the latest webapp, I receive the following error:
ActionController::RoutingError (no route found to match
“/technologies/list” with {:method=>:get}):

For some reason, ActionController is not recognizing the default route
(i.e., machine name/<app_root>//). Just for the
hell of it, I tried setting up the existing apps to use the Rails 1.2.1
gem, and I receive the same error.

I have typically only used the default routes and not any custom ones;
has something changed in Rails (I haven’t upgraded for a while) to
require additional customization of the routes.rb file?

Any help would be appreciated!

Thanks,
Will


#2

I have the exact same problem! It makes absolutely no sense.

When I run the WEBrick server, the routing works fine. In Apache +
FCGI, however, it does not.

Any help would be appreciated

-Matt

On Jan 19, 11:53 pm, Will B. removed_email_address@domain.invalid


#3

Greetings!

Here is my routes file:

ActionController::Routing::Routes.draw do |map|
map.connect ‘’, :controller => ‘home’
map.connect ‘:controller/:action/:id’
end

The blank route works, and I can get to my homepage. The second route
does not work. I get errors like this: “no route found to match
“/about” with {:method=>:get}”

So, I put the following into a before_filter in application.rb:

ActionController::Routes.reload!

And now I get the following error page: (application trace)

LoadError in HomeController#index
Expected /home/ebct/config/routes.rb to define Routes
RAILS_ROOT: /home/ebct/public_html/…/config/…

Application Trace | Framework Trace | Full Trace
/usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:250:in
load_missing_constant' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:453:inconst_missing’
/usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:465:in
const_missing' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:261:inload_missing_constant’
/usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:453:in
const_missing' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:261:inload_missing_constant’
/usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:453:in
const_missing' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:261:inload_missing_constant’
/usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:453:in
const_missing' #{RAILS_ROOT}/app/controllers/application.rb:32:inconfig_app’
Request
Parameters: None

Show session dump
flash: !map:ActionController::Flash::FlashHash {}

Response
Headers: {“cookie”=>[], “Cache-Control”=>“no-cache”}

What could it mean by “Expected /home/ebct/config/routes.rb to define
Routes”???

-Matt


#4

My problem is identical, but occurs only when I graft my rails app
onto an existing web site with
a symlink. If I set the rails app as the document root it work
fine.

I have switched back to rails 1.1.6 and im working again. Im going to
wait for rails 1.2.2


#5

Aha!

I upgraded RubyGems to 0.9.1 and everything works again! =)

-Matt


#6

How did you switch back to 1.1.6 from 1.2.2

Thanks

On Jan 30, 9:08 pm, “removed_email_address@domain.invalid”


#7

I had the same problem and was able to work around it by hardcoding the
RAILS_ROOT in environment.rb

http://dev.rubyonrails.org/ticket/6755 has more info