Como instalar Ruby on Rails junto com WampServer?
-
19-09-2019 - |
Pergunta
É possível instalar Ruby on Rails junto com Servidor Wamp (e manter as instalações do Apache/MySQL do WampServer)?
Solução
Instalei Ruby on Rails junto com o WampServer.Aqui está como fazer isso:
Substituir C:\wamp\
no texto a seguir pelo repositório de instalação do seu próprio WampServer.
Instalando Ruby:
- Baixe Ruby.Use as janelas binário versão, não o "instalador de um clique" porque contém MySQL e Apache dos quais não precisamos.
- Extraia o zip para
C:\wamp\ruby\
. Adicione o repositório bin do Ruby na sua variável de ambiente PATH:
- Clique com o botão direito em "Computador / Propriedades".
- Clique em “Configurações avançadas do sistema”.
- Guia Avançado/Variáveis de Ambiente.
- Acrescentar
;C:\wamp\ruby\bin
para a variável Caminho.
Instalando o DevKit:
Baixe o DevKit:
- Extraia o DevKit para
c:\wamp\ruby\DevKit
. cd /d c:\wamp\ruby\DevKit
.ruby dk.rb init
.- Adicionar
- c:\wamp\ruby
até o final deconfig.yml
.
- Adicionar
ruby dk.rb install
Instalando Rails e o servidor Mongrel:
Abra a linha de comando e digite:
gem install rails
Crie sua primeira aplicação Rails abrindo a linha de comando em
C:\wamp\www\rails\
e digitando:rails hello
Instale o servidor Mongrel e o serviço Windows Mongrel, certificando-se de executar a linha de comando como administrador:
gem install mongrel and gem install mongrel_service
Instale um serviço do Windows para sua aplicação Rails:
mongrel_rails service::install -N ruby-hello -c c:\wamp\www\rails\hello -p 3001 -e development
Inicie seu serviço Mongrel:
net start ruby-hello
Agora você pode acessar sua aplicação Rails em http://localhost:3001/
.
Integrando com Apache
Habilite mod_proxy em httpd.conf
Abra httpd.conf (c:\wamp\bin\apache\Apache2.x.x\conf\httpd.conf) e remova o comentário da seguinte linha:
LoadModule proxy_module modules/mod_proxy.so
Encaminhe seu tráfego para seu servidor Mongrel.Adicione o seguinte texto ao seu httpd.conf (ou extra/httpd-vhosts.conf se estiver incluído no seu httpd.conf):
<VirtualHost *:80> ServerName hello.com ServerAlias *.hello.com ProxyPass / http://localhost:3001/ ProxyPassReverse / http://localhost:3001 </VirtualHost>
Adicione hello.com ao seu arquivo hosts.Abrir
c:\windows\system32\drivers\etc\hosts
no bloco de notas e adicione a seguinte linha:127.0.0.1 www.hello.com hello.com
Agora você pode ir para http://www.hello.com e deve carregar seu aplicativo Rails.
Referências:
Outras dicas
Sim existe Instantrails
Isso assume que você está tentando configurar um ambiente de desenvolvimento, porque não faz muito sentido usar o Windows e/ou WAMP para um servidor de produção.
Você pode instância rubi com bastante facilidade no Windows usando o Instalador Ruby. Há também o instalador com um clique que inclui várias bibliotecas (embora você possa instalá -las com rubygems posteriormente).
Você está correto, pois instala trilhos (e dependências) como uma jóia.
Agora, quanto ao Apache ... vou sugerir que você mantenha sua instalação do WAMP e simplesmente não o use para rubi/trilhos. Ruby possui um servidor web embutido chamado Webrick, e há outro servidor leve chamado MonGrel (disponível como uma jóia). Eles podem ser executados simultaneamente com o Apache, com o Apache servindo conteúdo de PHP e trilhos de servir de Mongrel/Webrick. Eles serão executados em portas diferentes (Apache no 80, MonGrel/Webbrick em 3000 por padrão), para que não haja conflitos.
Existem várias vantagens com esta abordagem:
- Você não terá que mexer com a instalação do WAMP e correr o risco de estragar algo.
- A execução de aplicativos de diferentes idiomas os protege separadamente. Por exemplo, se o aplicativo do seu Rails travar o servidor, ele não reduzirá o seu material PHP, caso você esteja executando os dois.
- Em terceiro lugar, a maioria dos trilhos populares (rubimina, aptana etc.) possui controles internos para os servidores ou um dos servidores Mongrel e Webrick. Isso significa que você poderá iniciar/interromper/reiniciar seu servidor dentro do IDE, além de exibir a saída/logs. Para o desenvolvimento de trilhos no Windows, recomendo o Rubymine.
O MySQL é separado do Apache, para que seu aplicativo Rails possa acessar bancos de dados MySQL, independentemente de qual servidor esteja servindo seu conteúdo. Naturalmente, você terá que executar pelo menos a versão MySQL do WAMP para que funcione.
Para instalar+executar Rubi nos trilhos Aplicação no localhost (WampServer ou etc):
Use instalações independentes do servidor Ruby: a) http://railsinstaller.org/en b) http://www.helicontech.com/zoo/install.html c) https://bitnami.com/stack/ruby
OU
1) Instale Wamp (ou etc)
2) Instale Rubi
3) Abrir ... Wamp Bin Apache ApacheXxxxconfhttpd.conf, então pesquise e substituaOptions Indexes FollowSymLinks
comOptions Indexes FollowSymLinks EXECCGI
(ou Options Indexes FollowSymLinks Inclui EXECCGI
)
ps também, encontre e verifique se LoadModule CGI_Module não é comentado.
4) Pesquise e substitua#AddHandler cgi-script .cgi
com (... removendo # )
AddHandler cgi-script .cgi
AddHandler cgi-script .rb
5) Encontre a linha:DirectoryIndex index.php index.php3 index.html index.htm
e adicione no final deles: index.cgi index.rb
Agora, Reinicie o apache.
6) Crie um sample.rb (IN /WWW ROOT), com esse conteúdo:
#!C:\Ruby200\bin\ruby\ruby.exe
puts "Content-type: text/html" #in newer version, might be puts("....")
puts ""
puts "Test Pageeeeeeeee."
PS NOTA: (a) Mudança C: | Ruby .. Caminho para o seu caminho de instalação do Ruby corretamente. (b) Para evitar problemas, não instale o Ruby em um caminho, em que qualquer "nome da pasta" contém um espaço. (c) não deve haver um espaço entre o início da linha e imprimir(..
7) aberto http://localhost/sample.rb
Isso é tudo!!
psObserve que, em casos, ao usar .htaccess [interno .rb diretório], pode ser necessário inserir essas linhas em .htaccess:
Opções +EXECCGI
AddHandler CGI-Script .rb