Rogerio Ferreira

   
You are here: Home Documentação eRuby
Navigation
Log in


Forgot your password?
New user?
 
Document Actions

eRuby

Programando em Ruby no Estilo PHP.

Pra você que está saindo de PHP  ou quer iniciar o desenvolvimento para web com Ruby, mas ainda não escolheu um dos poderosos frameworks MVC disponíveis para Ruby, você pode começar sua jornada com o eRuby.


O que é eRuby?


É uma linguagem para embutir código ruby em arquivos HTML.

Instalando o eRuby e o Apache no CentOS 5.3

# yum install eruby httpd

Ajustando o Apache para rodar código Ruby

# ln -s /usr/bin/eruby /var/www/cgi-bin/eruby
# vim /etc/httpd/conf/httpd.conf
[...]
DirectoryIndex index.rhtml index.html index.html.var
[...]
<Directory "/var/www/cgi-bin">
AllowOverride All
Options All

Order allow,deny
Allow from all
</Directory>
[...]
AddType application/x-httpd-eruby .rhtml
Action application/x-httpd-eruby /cgi-bin/eruby
[...]
<ESC>:wq
# service httpd restart

Testando algum código Ruby

# vim /var/www/html/tabela_com_hash.rhtml
<html>
<head><title>Nossa Primeira Pagina com eRuby</title></head>
<body>
<table border=1>
<tr><th>Nome</th><th>Idade</th></tr>
<% hash_nomes = {:Pedro => 25, :Maria => 23, :Fernando => 14 } %>
<% hash_nomes.each do |chave, valor| %>
<tr>
<td>
<% puts "#{chave}" %>
</td>
<td>
<% puts "#{valor}" %>
</td>
</tr>
<% end %>
<table>
</body>
</html>

<ESC>:wq

Resultado do arquivo tabela_com_hash.rhtml:

eruby






E aí está o conteúdo dinâmico gerado com o eRuby!

Usando o Lighttpd ao invés do Apache

Para configurar o eRuby no Lighttpd é muito simples, mas no CentOS você precisa adicionar o repositório do rpmforge para instalá-lo via yum. Para configurar o repositório rpmforge basta fazer o seguinte:

Se sua arquitetura for i386 baixe este pacote:

# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

Mas se for x86_64:

# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

Agora instale o pacote baixado de acordo com a sua arquitetura e você já terá acesso ao repositório rpmforge disponível para poder instalar o Lighttpd:

# rpm -ivh rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

Instale o Lighttpd:

# yum install lighttpd

Altere as seguintes linhas no lighttpd.conf:

# vim /etc/lighttpd/lighttpd.conf
[...]
server.modules = (
# "mod_rewrite",
# "mod_redirect",
# "mod_alias",
"mod_access",
# "mod_cml",
# "mod_trigger_b4_dl",
# "mod_auth",
# "mod_status",
# "mod_setenv",
# "mod_fastcgi",
# "mod_proxy",
# "mod_simple_vhost",
# "mod_evhost",
# "mod_userdir",
"mod_cgi",
# "mod_compress",
# "mod_ssi",
# "mod_usertrack",
# "mod_expire",
# "mod_secdownload",
# "mod_rrdtool",
"mod_accesslog" )
[...]
index-file.names = ( "index.php", "index.html",
"index.htm", "default.htm",
"index.rhtml" )
[...]
cgi.assign = ( ".rhtml" => "/usr/bin/eruby")
[...]
<ESC>:wq
# service lighttpd restart
# vim /srv/www/lighttpd/index.rhtml
<html>
<head><title>Nossa Primeira Pagina com eRuby</title></head>
<body>
<h1>eRuby no Lighttpd!</h1>
<%
linguagem = "Ruby"

if linguagem == "Ruby"
puts "OK"
else
puts "PHP"
end
%>
</body>
</html>

<ESC>:wq

Agora você já pode executar seus códigos Ruby no leve Lighttpd!

« November 2009 »
Su Mo Tu We Th Fr Sa
1234567
891011121314
15161718192021
22232425262728
2930