RoR na świat

Stworzyłem witrynę w Ruby on Rails, wszystko śmiga aż miło. Chciałbym ja teraz pchnąć do świata. Posiadam serwer na którym pracuje sobie Linux, jest Ruby oraz Rails.

Co powinienem jeszcze doinstalować, i jak to skonfigurować żebym mógł uruchomić moją witrynę i żeby była widoczna na świat.

Poproszę o jakiś tutorial który przeprowadzi mnie przez taką konfigurację krok po kroku. Z góry dziękuję i czekam z niecierpliwością na jakieś rozwiązania. :)

  • Zainstaluj sobie Apache 2 z modułem mod_proxy i mongrel_rails. Włącz mod_proxy:

    # a2enmod proxy
    

    Być może będziesz musiał wyedytować uprawnienia w /etc/apache2/mods-available/proxy.conf Następnie uruchamiasz mongrel_rails na localhost na porcie na przykład 8000.

    $ mongrel_rails start -a 127.0.0.1 -d -p 8000 -e production -c /ŚCIEŻKA/DO/RAILSÓW -P log/mongrel.pid
    

    W Apache 2 dodajesz nowy wirtualny host:

    <Virtualhost ADRESIP:80>
      ServerName TWOJADOMENA.PL
      RewriteEngine On
      RewriteRule ^/(.*) http://127.0.0.1:8000/$1 [P,L]
      ProxyPassReverse / http://127.0.0.1:8000/
      DocumentRoot /ŚCIEŻKA/DO/RAILSÓW/public
    </Virtualhost>
    

    To wszystko. Jeśli chcesz zatrzymać mongrela to:

    $ mongrel_rails stop -c /ŚCIEŻKA/DO/RAILSÓW -P log/mongrel.pid
    

    Oczywiście możesz sobie to uruchamianie/zatrzymywanie mongrela opakować w jakiś skrypt. W każdym razie musi być uruchomiony z takimi uprawnieniami, by miał dostęp do plików Railsa. Jest to podstawowa, działająca konfiguracja, bez równoważenia obciążenia, itd.

  • Czy lepszym wyjściem nie byłaby instalacja Phusion Passengera aka mod_rails? To chyba wygodniejsze rozwiązanie, na dodatek możesz później napotkać mod_rails na serwerach specjalnie przystosowanych do Ruby on Rails.

Zaloguj się, aby dodać swoją odpowiedź