2012-03-26 4 views
0

Ich hatte Ruby/Gem installiert und der Server ist Apache2 läuft gut. Aber ich versuche, ein einfaches Ruby-Projekt, das mit Hilfe von Netbeans IDE gebaut wird. Wie kann ich dieses Webprojekt im Webbrowser ausführen?Wie wird Core Ruby Web-Anwendung im Web-Server ausgeführt?

+1

Ruby ist nicht PHP, aber Sie können Ruby als [CGI-Skripte] (http://StackOverflow.com/Questions/2245634/setting-up-Ruby-Cgi-in-Apache), FastCGI, WSGI usw. – Candide

Antwort

1

Während Sie manchmal noch lesen, sollten Sie Ruby-Anwendungen nicht unter CGI ausführen. Die Spezifikation wird alt und die Unterstützung dafür (vor allem in der Schienenwelt) hört auf.

Die meisten Web-Frameworks in Ruby verwenden Rack, die eine generische Schnittstelle zwischen einem Webserver und einer Ruby-Anwendung ist. Wenn Sie also eine Rack-kompatible Anwendung schreiben (was Sie tun, wenn Sie beispielsweise Rails, Sinatra oder Padrino verwenden), können Sie sie auf jedem Webserver starten, der eine Rack-Schnittstelle anbietet.

Die wahrscheinlich beliebteste ist Phusion Passenger (modrails), die ein Modul für Apache oder Nginx ist und integriert in den Webserver. Es sollte jedoch angemerkt werden, dass es nur auf Linux/Unix-Systemen läuft, nicht auf Windows.

Beliebte Alternativen sind Thin und Unicorn. Diese Server werden normalerweise hinter einem Front-End-Webserver wie Apache oder nginx ausgeführt. Der Frontend-Webserver liefert statische Dateien (CSS, Bilder, ...) und leitet dynamische Anfragen an den Backend-Webserver (Thin oder Unicorn) weiter. Sie können viele Anleitungen auf Google finden, wenn Sie nach "Apache Thin Ubuntu" (oder ähnlich) suchen.

Und als Randbemerkung sollte Mongrel nicht mehr für neue Bereitstellungen verwendet werden, da es nicht mehr wirklich gewartet wird und viele Probleme mit neueren Framework-Versionen verursacht.

+0

ausführen +1 für Phusion Passenger, verbringen Sie einfach einige Zeit damit, herauszufinden, wie Sie es einrichten und es ist fast magisch – djd

Verwandte Themen