2011-12-10 9 views
14

Ho una configurazione in cui nginx serve un'applicazione rotaie all'interno di una specifica sottocartellaAnteposta percorso prefisso per tutti i circuiti rotaie

es. http://myserver/railsapp/ e tutto ciò che è interno viene inoltrato ai binari, se la prima sottocartella è diversa, esegue il server dei file statici da un'altra cartella.

Non sono riuscito a trovare come specificare questo comportamento nei binari in modo intelligente. Voglio dire, quello che voglio è specificare un'opzione come Rails.server_prefix = /railsapp in modo che tutti i percorsi vengano prepati automaticamente, sia sulle richieste in arrivo che sui collegamenti generati.

risposta

30

Probabilmente si desidera utilizzare il metodo di applicazione del router con la: percorso argomento:

Rails.application.routes do 
    scope(:path => '/railsapp') do 
    # the rest of your routes go here 
    end 
end 

See the docs for more info.

+0

questo dovrebbe funzionare per la generazione percorso, ma in Rails 3.1, questo non riconoscerà '/ railsapp/assets/pic.png' ... –

+8

beh, ora ho capito la funzione di 'config.assets.prefix' ... Ho dovuto mettere' config.assets.prefix = '/ railsapp/assets'' e ora Funziona! –

+1

Puoi anche fare 'scope path: '/ railsapp' do' per una sintassi leggermente più semplice secondo me. Grazie per questo, mi ha aiutato! – stuyam

Problemi correlati