2009-06-12 15 views
6

Jestem trochę zagubiony, staram się wdrożyć moją aplikację na wspólnym serwerze dreamhost. Teraz wszystko działa dobrze lokalnie. To moja pierwsza próba w Railsach i nie jestem programistą ani sysadminem, tylko hakuję coś razem.Jak wdrożyć aplikację Rails do Dreamhost?

Na Dreamhostu, jeśli zacznę Webrick, działa dobrze na porcie 3000, ale webricks ginie bardzo szybko, myślę, że to ma sens.

Co muszę zrobić, aby uruchomić?

Włączam obsługę fastcgi i mod_rails.

Teraz, w jaki sposób uzyskać nieprzerwane działanie aplikacji?

Ciągle czytam o konieczności robienia rzeczy do .htaccess i do dispatch.fcgi.

Ale nie mogę znaleźć żadnego pliku wysyłkowego w mojej aplikacji rails (2.3.2).

Czy muszę utworzyć tę ręcznie? Naprawdę nie jest dla mnie bardzo podobny do szyn. Naprawdę nie udało mi się dowiedzieć, co robi ten plik wysyłkowy i dlaczego jest potrzebny.

Każda pomoc zostanie bardzo doceniona.

Spojrzałem na DH Wiki, ale nie mógł zrozumieć to (http://wiki.dreamhost.com/Rails)

Zwiększenia:

Włączyłem mod_rails i wskazał do katalogu publicznego (miałem już zrobione, że). Wciąż dostaję błąd: screencast.com/t/KamqVawk

Hm, logi serwera wyglądają tak, jakby faktycznie nie było żądania, więc może to być problem na końcu Dreamhosts. To dziwne, widzę, że access.log pokazuje nową datę zmiany, kiedy próbuję uzyskać dostęp do strony, ale nie odnotowano żadnego żądania, error.log też jest pusty.

screenshot of configuration

Dreamhost Pomoc Odpowiedź:

Kelner był na bieżąco, więc nie było problemu. Zaproponowali zamrożenie klejnotów, co zrobiłem (patrz: http://wiki.dreamhost.com/Freezing_Gems) Ale to nie pomogło. Zgaduję, że poddaję się i patrzę na hosting, który specjalizuje się w szynach.

Dzięki za pomoc!

Zmieniono hostingrails.com

Mam aplikacji pracujących na hostingrails.com, pasażer na hostingrails.com pokazał mi błędy, które nie zostały pokazane przez DreamHost lub kundla. Poprawiając te błędy, uruchomiłem aplikację.

Odpowiedz

8

Dreamhost nie zezwoli na korzystanie z Webrick, jeśli używasz hostingu współdzielonego. Możesz użyć FastCGI lub Pasażera do hostowania Railsów na wspólnym DH (kundel jest opcją, jeśli uaktualnisz do DreamhostPS, ale to oczywiście droższe).

Dla FastCGI, ty będzie potrzebny plik dispatch.fcgi (starsze wersje Rails będzie generować jeden kiedy stworzył aplikację nowe szyny, ale zatrzymał się około 2.2, jeśli dobrze pamiętam), a także kod w swoim. htaccess do wysyłania żądań do dyspozytora. Zobacz stronę wiki Dreamhost Ruby on Rails, aby uzyskać szczegółowe informacje na temat konfigurowania FastCGI.

Bardziej preferowaną opcją jest skonfigurowanie aplikacji do uruchamiania na platformie Phusion Passenger (aka mod_rails). Powinno to być całkiem proste dzięki panelowi Dreamhost, wystarczy włączyć domenę, aby użyć mod_rails, a następnie ustawić katalog dla domeny na publiczny katalog aplikacji. Więcej informacji znajduje się na stronie wiki Passenger.

+1

cóż, tak właśnie zrobiłem. Włączyłem mod_rails i wskazałem na katalog publiczny. Występuje błąd http://screencast.com/t/KamqVawk –

+0

Co zostanie dodane do pliku dziennika podczas próby uzyskania dostępu do witryny? –

+0

jak widzisz w mojej edycji pytania, właściwie nic nie zostaje nagrane. –

Powiązane problemy