Ruby on Rails, Apache2, mod_fcgid

Apache, Lighttpd, nginx, Cherokee
TecServer
Anbieter
Posts: 91
Joined: 2006-04-08 21:41

Ruby on Rails, Apache2, mod_fcgid

Post by TecServer » 2007-03-01 14:43

Grüß euch,

bin gerade am ausprobieren von RoR und hab da leider etwas schwierigkeiten.
mit dem mitgelieferten WebBRICK Server läuft das soweit alles wunderbar, doch Apache2 scheint da irgendwie nicht zu wollen.

Unter http://web0.itsbserver.org/test/public/ kann man die URL zum RoR Test mal aufrufen, in den Error logs finde ich folgendes:
[Thu Mar 01 14:36:34 2007] [notice] mod_fcgid: server /data/www/web0/html/test/public/dispatch.fcgi(22171) started
[Thu Mar 01 14:36:34 2007] [error] [client 193.170.110.250] Premature end of script headers: dispatch.fcgi
[Thu Mar 01 14:36:37 2007] [notice] mod_fcgid: process /data/www/web0/html/test/public/dispatch.fcgi(22171) exit(communication error), terminated by calling exit(), return code: 107
Tja und nun steh ich etwas an, hat einer eine idee?

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Ruby on Rails, Apache2, mod_fcgid

Post by Roger Wilco » 2007-03-01 17:57

Schau in dein suexec.log. Schau in die Logs, die RoR selbst anlegt (unter /path/to/application/log/{development,fastcgi.crash,production}.log).

Hast du außerdem das Environment richtig gesetzt? Stichwort RAILS_ENV.

Bei mir hat das immer recht stressfrei funktioniert. mod_fcgid laden, mit DefaultInitEnv die Variable RAILS_ENV setzen und mit SuexecUserGroup die zugehörigen Benutzer eintragen.

TecServer
Anbieter
Posts: 91
Joined: 2006-04-08 21:41

Re: Ruby on Rails, Apache2, mod_fcgid

Post by TecServer » 2007-03-01 18:29

suexec legt bei mir schon gar kein log an und die test.log von RoR ist relativ unaussagekräftig
log # cat test.log


Processing InfoController#properties (for 85.124.7.238 at 2007-03-01 09:57:58) [GET]
Session ID: d8c7a00026692844f551b1a4c0106565
Parameters: {"action"=>"properties", "controller"=>"rails/info"}
Completed in 0.00063 (1584 reqs/sec) | Rendering: 0.00003 (4%) | 500 [http://www.xxxxxxx.at/rails/info/properties]


Processing InfoController#properties (for 127.0.0.1 at 2007-03-01 09:58:48) [GET]
Session ID: 4e878d43fdd34cb8b0602777200d5bc0
Parameters: {"action"=>"properties", "controller"=>"rails/info"}
Completed in 0.01147 (87 reqs/sec) | Rendering: 0.00058 (5%) | 200 OK [http://localhost/rails/info/properties]


Processing HomeController#index (for 85.124.7.238 at 2007-03-01 10:00:38) [GET]
Session ID: d8c7a00026692844f551b1a4c0106565
Parameters: {"action"=>"index", "controller"=>"home"}


ActionController::UnknownAction (No action responded to index):
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/filters.rb:368:in `perform_action_without_benchmark'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/benchmarking.rb:69:in `perform_action_without_rescue'
/usr/lib/ruby/1.8/benchmark.rb:293:in `measure'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/benchmarking.rb:69:in `perform_action_without_rescue'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/rescue.rb:82:in `perform_action'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/base.rb:408:in `send'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/base.rb:408:in `process_without_filters'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/filters.rb:377:in `process_without_session_management_support'
/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/session_management.rb:117:in `process'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/dispatcher.rb:38:in `dispatch'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/webrick_server.rb:115:in `handle_dispatch'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/webrick_server.rb:81:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/webrick_server.rb:67:in `dispatch'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/commands/servers/webrick.rb:59
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__'
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
/usr/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:in `require'
/usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/commands/server.rb:30
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__'
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
/usr/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:in `require'
./script/server:3


Rendering /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/templates/rescues/layout.rhtml (404 Page Not Found)
Environment hab ich eigentlich gar nicht gesetzt da in dem tutorial mit dem ich gearbeitet habe davon keine rede war :-/
Kannst du mir da kurz einen wink mit dem zaunpfahl geben wo du das eingetragen hast?

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Ruby on Rails, Apache2, mod_fcgid

Post by Roger Wilco » 2007-03-01 18:32

questionaire wrote:suexec legt bei mir schon gar kein log an und die test.log von RoR ist relativ unaussagekräftig
Das test.log wird nur angelegt, wenn du die Unit-Tests mit "rake test" o. ä. ausführst. Normalerweise sollten da development.log (für die Entwicklerversion) und production.log (für das Produktionssystem) liegen. Stimmen alle Rechte?
questionaire wrote:Environment hab ich eigentlich gar nicht gesetzt da in dem tutorial mit dem ich gearbeitet habe davon keine rede war :-/
Kannst du mir da kurz einen wink mit dem zaunpfahl geben wo du das eingetragen hast?
Ich habe das in dem zugehörigen VirtualHost-Block in der Apache-Konfiguration eingetragen. Das geht AFAIR seit mod_fcgid 2.0. Davor musste die Einstellung serverweit in der Hauptkonfiguration des Apache eingetragen werden.

TecServer
Anbieter
Posts: 91
Joined: 2006-04-08 21:41

Re: Ruby on Rails, Apache2, mod_fcgid

Post by TecServer » 2007-03-02 09:28

hah nun funktionierts.

hab die .htaccess nochabgeändert
AddHandler x-suphp-cgi .fcgi
AddHandler x-suphp-cgi .cgi
damit läufts

TecServer
Anbieter
Posts: 91
Joined: 2006-04-08 21:41

Re: Ruby on Rails, Apache2, mod_fcgid

Post by TecServer » 2007-03-02 10:12

gibts eigentlich soetwas wie bei php das cmd phpinfo(), damit ich alle verfügbaren controller etc einsehen kann?

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Ruby on Rails, Apache2, mod_fcgid

Post by Roger Wilco » 2007-03-02 14:05

questionaire wrote:damit läufts
Mit SuPHP, aber nicht über mod_fcgid...