我在rails生产日志中一直看到这个错误,任何想法是什么问题? 我在apache上使用mongrel集群运行rails。 RoutingError(没有路由匹配“/:// 0”与{:method =>:get}):
不确定尝试的网址导致错误。
编辑:继承我的routes.rb文件
ActionController :: Routing :: Routes.draw do | map |
map.signout '/account/signout', :controller => 'sessions', :action => 'destroy'
map.signin '/account/signin', :controller => 'sessions', :action => 'new'
map.signup '/account/signup', :controller => 'users', :action => 'new'
map.change_password '/account/change_password', :controller => 'users', :action => 'change_password'
map.forgot_password '/account/forgot_password', :controller => 'users', :action => 'forgot_password'
map.reset_password '/account/reset_password/:id', :controller => 'users', :action => 'reset_password'
map.preferences '/preferences', :controller => 'preferences', :action => 'index'
map.dashboard '/dashboard', :controller => 'dashboard', :action => 'index'
map.account '/account', :controller => 'account', :action => 'index'
map.affiliate '/affiliates', :controller => 'affiliates', :action => 'index'
map.essentials '/preferences/essentials', :controller => 'preferences/essentials', :action => 'index'
map.contacts '/preferences/contacts', :controller => 'preferences/contacts', :action => 'index'
map.travel '/preferences/travel', :controller => 'preferences/travel', :action => 'index'
map.online '/preferences/online', :controller => 'preferences/online', :action => 'index'
map.reminders '/preferences/reminders', :controller => 'preferences/reminders', :action => 'index'
map.miscellaneous '/preferences/miscellaneous', :controller => 'preferences/miscellaneous', :action => 'index'
map.home '/home', :controller => 'main', :action => 'home'
map.about '/about', :controller => 'main', :action => 'about'
map.gift '/gift', :controller => 'gift', :action => 'index'
map.plans '/plans', :controller => 'main', :action => 'plans'
map.faqs '/faqs', :controller => 'main', :action => 'faqs'
map.contact '/contact', :controller => 'main', :action => 'contact'
map.tos '/terms_of_service', :controller => 'main', :action => 'terms_of_service'
map.privacy '/privacy', :controller => 'main', :action => 'privacy'
map.root :controller => 'main'
map.connect ':controller/:action/:id'
map.connect ':controller/:action/:id.:format'
端
rails错误日志中的完整错误消息:
ActionController::RoutingError (No route matches "/account/://0" with {:method=>:get}):
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/routing/recognition_optimisation.rb:66:in `recognize_path'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/routing/route_set.rb:386:in `recognize'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:182:in `handle_request'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:110:in `dispatch_unlocked'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:123:in `dispatch'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:122:in `synchronize'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:122:in `dispatch'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:132:in `dispatch_cgi'
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/action_controller/dispatcher.rb:39:in `dispatch'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/rails.rb:76:in `process'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/rails.rb:74:in `synchronize'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/rails.rb:74:in `process'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:159:in `process_client'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:158:in `each'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:158:in `process_client'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:285:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:285:in `initialize'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:285:in `new'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:285:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:268:in `initialize'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:268:in `new'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel.rb:268:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:282:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:281:in `each'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:281:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:128:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/command.rb:212:in `run'
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:281
/usr/local/bin/mongrel_rails:19:in `load'
/usr/local/bin/mongrel_rails:19
摘自apache vhost文件:
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*)$ https://%{SERVER_NAME}/$1 [R,L]
# Redirect all non-static requests to Mongrel
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
RewriteRule ^/(.*)$ balancer://mongrel1%{REQUEST_URI} [P,QSA,L]
<Proxy balancer://mongrel1>
BalancerMember http://127.0.0.1:3000
BalancerMember http://127.0.0.1:3001
</Proxy>
ProxyPass / balancer://mongrel1/
ProxyPassReverse / balancer://mongrel1/
ProxyPreserveHost on
谢谢!
答案 0 :(得分:1)
呃 - 问题似乎是有人要求提供"/account/://0"
的网址?为什么不会产生路由错误?我不希望这会打到你定义的任何路线。
答案 1 :(得分:1)
这可能只是一次黑客攻击吗?
答案 2 :(得分:0)
您的config / routes.rb文件中似乎存在问题。
如果您可以添加routes.rb文件的内容以及您尝试加载到邮件中的网址,我们可以提供更多帮助。
答案 3 :(得分:0)
map.connect':controller /:action /:id' map.connect':controller /:action /:id。:format'
按照下面给出的顺序交换这些陈述。
map.connect':controller /:action /:id。:format' map.connect':controller /:action /:id'
在routes.rb中没有提供任何restful路由,因此问题可能不是方法定义,也不是调用任何成员方法。
格式只是覆盖了网址源。