Como dizer que os rails usam o ruby não padrão?

1

Eu preciso de duas versões diferentes do ruby em um servidor. O ruby empacotado para o boneco empacotado funcionar e um ruby compilado para um aplicativo da Web rails funcionar. Então, basicamente, eu quero que o ruby padrão seja o ruby do pacote e que os rails usem o ruby compilado (em /usr/local/bin/ e /usr/local/lib/ )

Eu encontrei referências para definir as variáveis de ambiente RUBYPATH e RUBYLIB, mas estou confuso sobre onde configurá-las. Em .bashrc , .profile , na configuração do apache em algum lugar?

    
por Hamish Downer 25.05.2010 / 17:13

2 respostas

4

Um truque seria usar o PATH para incluir o que você deseja primeiro. Isso é provavelmente um hack embora.

Se você estiver usando o Rails 2.x (que eu suponho que você é) você pode executar especificamente coisas com um caminho lá, como:

/usr/local/bin/ruby script/server

(para o modo de desenvolvimento, por exemplo).

Se você estiver usando algo como o Phusion Passenger, que eu pessoalmente recomendo, acho que ele pode ser definido globalmente para a configuração do servidor da web. Não tenho certeza se você pode fazer isso por host virtual usando o Passenger, mas não parece que você precisa disso.

    
por 25.05.2010 / 18:38
1

Eu sei que este é um tópico antigo, mas caso alguém mais esteja tendo este problema, basta instalar o RVM ( link ) Você pode literalmente mudar versões do ruby que o sistema usa assim (na linha de comando):

rvm 1.9.2
ruby -v  (will display ruby 1.9.2)

rvm 1.8.7 
ruby -v (will display ruby 1.8.7)

Simples, sem problemas!

B

    
por 30.07.2010 / 17:50