Passenger/phusion multiples applications rails


#1

Bonjour

En pleine découverte de Passenger j’ai voulu configurer un serveur
intranet
pour non plus une application (pour laquelle la configuration était
impeccable) mais deux (pour au futur 4 applications, voire plus)

Mon adresse ip intranet est à 192.168.0.3

mon fichier hosts n’est pas modifié

Mon virtualhost dans etc/apache2/apache2.conf

<VirtualHost 192.168.0.3:80>
DocumentRoot /home/serveurweb/rails/
RailsBaseURI /todos
RailsBaseURI /ibnsina
RailsEnv development

Il existe bien sur deux liens symboliques var/www/todos et
/var/www/ibnsina
pointant vers les dossiers public des applications respectives,

Hors en utilisant l’adresse 192.168.0.3/ j’ai la liste des liens
symboliques, mais en cliquant sur chaque lien vers une applications j’ai
une
erreur 500 Internal Server Error

L’error log d’apache est lÃ

[Sat Jan 17 00:15:39 2009] [notice] Apache/2.2.9 (Ubuntu)
PHP/5.2.6-2ubuntu4
with Suhosin-Patch Phusion_Passenger/2.0.6 configured – resuming normal
operations
*** Exception Errno::ENOENT in spawn manager (No such file or directory

/home/serveurweb/rails/config/environment.rb) (process 6372):
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/application.rb:51:in
read' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/application.rb:51:indetect_framework_version’
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:193:in
spawn_rails_application' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:126:inspawn_application’
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:251:in
handle_spawn_application' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:insend
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in
main_loop' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:168:instart_synchronously’
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/bin/passenger-spawn-server:46
*** Exception Errno::ENOENT in spawn manager (No such file or directory

/home/serveurweb/rails/config/environment.rb) (process 6385):
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/application.rb:51:in
read' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/application.rb:51:indetect_framework_version’
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:193:in
spawn_rails_application' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:126:inspawn_application’
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:251:in
handle_spawn_application' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:insend
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in
main_loop' from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:168:instart_synchronously’
from
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/bin/passenger-spawn-server:46
[Sat Jan 17 00:15:47 2009] [error] [client 192.168.0.10] *** Unexpected
error in Passenger: Cannot spawn application ‘/home/serveurweb/rails’:
The
spawn server has exited unexpectedly., referer: http://192.168.0.3/

Je tourne un peu en rond, alotrs si qqu’un a une petite idée :wink:

Merci

NG


#2

Ben l’erreur est indiquée clairement pourtant.

"*** Exception Errno::ENOENT in spawn manager (No such file or
directory -
/home/serveurweb/rails/config/environment.rb) (process 6372): "

Tu n’a pas de environment.rb. Il t’en faut un pour chaque application
rails.


#3
  • Ton DocumentRoot doit pointer sur le répertoire public de l’application.
  • Tu dois faire un virtual host par application.


Thomas

kazhar a écrit :


#4

"*** Exception Errno::ENOENT in spawn manager (No such file or
directory -
/home/serveurweb/rails/config/environment.rb) (process 6372): "

et bien à cet endroit là il n’y pas d’applications mais cela c’est du Ã
un
document root inadapté.

Le 17 janvier 2009 13:35, Thomas removed_email_address@domain.invalid a écrit :

  • Ton DocumentRoot doit pointer sur le répertoire public de l’application.

Ah oui , ça j’ai corrigé

  • Tu dois faire un virtual host par application.

dans la doc de phusion

http://www.modrails.com/documentation/Users%20guide.html#deploying_rails_to_sub_uri

il y a écrit

You can deploy multiple Rails applications under a virtual host, by
specifying
RailsBaseURIhttp://www.modrails.com/documentation/Users%20guide.html#RailsBaseURImultiple
times. For example:

<VirtualHost *:80>

RailsBaseURI /app1
RailsBaseURI /app2
RailsBaseURI /app3

avec un seul documentroot et un virtualhost …
bizarre non ?


#5

Je ne sais pas si ça a une importance, mais dans l’exemple de la doc de
Passenger, le “DocumentRoot” ne comporte pas de “/” final, alors que
dans ta
conf il y en a un…

Autre chose : tu dis “/var/www/ibnsina pointant vers les dossiers public
des
applications respectives” et “DocumentRoot /home/serveurweb/rails/”. La
doc
suggère que tu mets un “DocumentRoot /document/root” et un “RailsBaseURI
/myapp”, et que c’est ensuite concaténé en “/document/root/myapp” qui
doit
pointer sur le dossier public de ton appli, non ? LÃ il faudrait choisir
entre /var/www et /home/serveurweb/rails si je comprends bien, mais je
n’ai
pas testé…

Bon courage !

JB

2009/1/17 Thomas removed_email_address@domain.invalid


#6

Nicolas G a écrit :

avec un seul documentroot et un virtualhost …
bizarre non ?

Ok je ne connaissais pas. Personnellement, je m’assurerais déjà qu’une
des applis fonctionne sans sub URI, ensuite tu la fais passer en sub URI
et ensuite, tu ajoutes les autres. Tu as bien créé le lien symbolique
comme écrit dans la doc?


#7

Ok je ne connaissais pas. Personnellement, je m’assurerais déjà qu’une
des applis fonctionne sans sub URI, ensuite tu la fais passer en sub URI
et ensuite, tu ajoutes les autres. Tu as bien créé le lien symbolique
comme écrit dans la doc?

Oui et toutes les applis fonctionnent en utilisant un virtualhost
unique,
mais cela déconne en utilisant ce qui est, sommairement, expliqué dans
la
doc et que j’ai compris …

Le 17 janvier 2009 18:16, Jean-Baptiste B.
removed_email_address@domain.invalida écrit :

Je ne sais pas si ça a une importance, mais dans l’exemple de la doc de
Passenger, le “DocumentRoot” ne comporte pas de “/” final, alors que dans ta
conf il y en a un…

Autre chose : tu dis “/var/www/ibnsina pointant vers les dossiers public
des applications respectives” et “DocumentRoot /home/serveurweb/rails/”. La
doc suggère que tu mets un “DocumentRoot /document/root” et un “RailsBaseURI
/myapp”, et que c’est ensuite concaténé en “/document/root/myapp” qui doit
pointer sur le dossier public de ton appli, non ? LÃ il faudrait choisir
entre /var/www et /home/serveurweb/rails si je comprends bien, mais je n’ai
pas testé…

oui j’ai essayé aussi

Reste qu’en regardant le forum de google groups je ne suis pas le seul Ã
avoir des problèmes de configuration…

Merci de votre aide.

NG