Schlagwort-Archive: Phusion Passenger

passenger spawn_manager

Habe mir unlängst eine Spielwiese für Ruby on Rails 3.0.8 auf Debian 6.0 eingerichtet. Auch die Passenger Einrichtung ist heute auf Debian schon ein Klacks und funktionierte, wie man hier sieht.
Mit git hatte ich keine Erfahrung, aber ich will auch damit spielen, also habe ich mich schnell eingearbeitet und es hat mich überzeugt. Ein wirklich hervorragendes und sehr mächtiges Version Control System. Sogar das zentrale Repository mit gitosis und gitweb funktionierte nach einigen Spielereien mit den Schlüsseln.
Von einer entwicklungs-sub.domain.xx muss man sein RoR-Projekt natürlich noch bequem auf eine production.domain.xx schieben können, also kam Capistrano ins Spiel.
Stundenlang kamen immer wieder seltsame Fehlermeldungen von einem passenger spawn_manager im error.log vom Apachen – der sich mit einem 500er error code verweigerte – die darauf hingedeutet haben, dass etwas mit dem spawn server nicht in Ordnung war.

Nun habe ich das Problem gelöst und alles was nicht 100%ig meinen Vorstellungen entspricht, sind die Fehlermeldungen und meine Genauigkeit, denn natürlich war ich wieder einmal selbst schuld, da ich in der deploy.rb den Pfad zum Repository falsch setzte. Naja, ich hab ja eh nur den „.“ vor „git“ vergessen. LOL

(312)

Phusion Passenger

Phusion Passenger benötigte bei mir auch ruby1.8-dev und build-essential. Also zuerst mit aptitude installieren und dann funktionierte auch gem install passenger. Vorher kam eine Meldung wie
extconf.rb:18:in `require': no such file to load -- mkmf (LoadError)
from extconf.rb:18

Dann kann man mit pfad/(z.B. /var/lib/gems/1.8/bin)passenger-install-apache2-module das Modul kompilieren und installieren. Eventuell benötigt man dazu noch Bibliotheken oder Pakete, aber das erfährt man vom Installationsprogramm. Ich musst z.B. noch apache2-prefork-dev installieren, damit es klappte.
# LoadModule passenger_module /usr/lib64/ruby/gems/1.8/gems/passenger-1.0.1/ext/apache2/mod_passenger.so
# RailsSpawnServer /usr/lib64/ruby/gems/1.8/gems/passenger-1.0.1/bin/passenger-spawn-server
# RailsRuby /usr/bin/ruby
oder was eben ausgegeben wird in die Apache conf eintragen und das „public“-Verzeichnis des Ruby on Rails Projektes angeben

<VirtualHost *:80>
ServerName www.yourhost.com
DocumentRoot /somewhere/public
</VirtualHost>

Näheres zu Phusion Passenger findet man auf
Phusion Passenger users guide und auf
Rails Wiki sowie auf
Passenger: Let It Ride?

rails.vim möchte ich an dieser Stelle auch erwähnen und empfehlen.

Weitere Weblinks:
Forum RoR Experts
Rails Engines

(638)