2009-06-12 12 views
6

Sono perso, provo a distribuire la mia applicazione su un server dreamhost condiviso. Ora tutto funziona bene localmente. È il mio primo tentativo su Rails, e non sono un programmatore o un amministratore di sistema, sto solo hackerando qualcosa insieme.Come distribuire un'app per Rails su Dreamhost?

Su Dreamhost, se avvio webrick, funziona bene sulla porta 3000, ma webricks viene ucciso abbastanza rapidamente, immagino che abbia senso.

Quindi cosa devo fare per farlo funzionare?

Abilitato supporto fastcgi e mod_rails.

Ora, come faccio a far funzionare costantemente l'app?

Continuo a leggere di dover fare cose a .htaccess e inviare.fcgi.

Ma non riesco a trovare alcun file di invio nella mia app per rotaie (2.3.2).

Devo creare quello manualmente? Non si schiude molto bene come me. Non sono riuscito a scoprire veramente cosa fa questo file di dispatch e perché è necessario.

Qualsiasi aiuto sarebbe molto apprezzato.

ho guardato il DH Wiki, ma non poteva capirlo (http://wiki.dreamhost.com/Rails)

Aggiunte:

ho attivato mod_rails e indicò la directory pubblica (avevo già fatto). Continuo a ricevere un errore: screencast.com/t/KamqVawk

Hm, i log del server sembrano non esserci effettivamente richieste, quindi questo potrebbe essere un problema alla fine di dreamhosts. È strano vedere che il file access.log mostra una nuova data di modifica, quando provo ad accedere alla pagina, ma non c'è nessuna richiesta annotata, error.log è vuoto.

screenshot of configuration

DreamHost Supporto Risposta:

Il server è stato fino ad oggi, in modo che non era il problema. Hanno proposto di congelare le gemme, cosa che ho fatto (vedi: http://wiki.dreamhost.com/Freezing_Gems) Ma non è stato d'aiuto. Suppongo che mi sto arrendendo e che aspetto l'hosting specializzato per i binari.

Thx per tutto il vostro aiuto!

cambiato in hostingrails.com

ho ottenuto l'applicazione a lavorare su hostingrails.com, passeggero su hostingrails.com mi ha mostrato gli errori, che non sono stati mostrati da Dreamhost o meticcio. Correggendo questi errori, ho fatto funzionare l'app.

risposta

8

Dreamhost non ti consente di utilizzare webrick se utilizzi l'hosting condiviso. Puoi utilizzare FastCGI o Passenger per ospitare Rails su DH condiviso (il meticcio è un'opzione se esegui l'upgrade a DreamhostPS, ma ovviamente è più costoso).

Per FastCGI, è sarà necessario un file dispatch.fcgi (versioni precedenti di Rails genererebbe uno quando è stata creata una nuova app Rails, ma che si è arrestato attorno a 2,2 se non ricordo male), così come codice nel tuo. htaccess per inviare richieste al dispatcher. Vedi la pagina wiki Dreamhost Ruby on Rails per dettagli sulla configurazione di FastCGI.

L'opzione più preferibile è impostare la propria applicazione per l'esecuzione su Phusion Passenger (ovvero mod_rails). Dovrebbe essere piuttosto semplice attraverso il tuo pannello DreamHost, devi solo abilitare il dominio per usare mod_rails e quindi impostare la directory per il dominio nella directory pubblica della tua applicazione. Vedi la pagina wiki Passenger per maggiori dettagli.

+1

beh, questo è quello che ho effettivamente fatto. Ho abilitato mod_rails e ho fatto riferimento alla directory pubblica. Continuo a ricevere un errore http://screencast.com/t/KamqVawk –

+0

Cosa viene aggiunto al file di registro quando si tenta di accedere al sito? –

+0

come vedi nella mia modifica della domanda, in realtà nulla viene registrato. –

Problemi correlati