Ocultando a tecnologia de um site usando mod_rewrite

5 de abril de 2006 ~ Tags:

No artigo anterior, sugeri a mudança na configuração do httpd.conf para ocultar qual a tecnologia de um site. Isso pode ser útil em dois casos. O primeiro, por uma questão estética (não tão relevante) e a segunda por uma questão de segurança. Já que não se conhece como o site foi feito, ataques com SQL Injection, por exemplo, podem ser atrasados.

Mas voltando ao conteúdo desse artigo, o Apache oferece outra forma de maquiar uma URL. E isso é através do mod_rewrite. Além de oferecer a segurança em não mostrar a extensão de um arquivo, o mod_rewrite permite a criação de URLS ‘fáceis’ de entender e não monstros do tipo index.php?id=7&date=05/02/97&page=6

O mod_rewrite não passa de um módulo (que deve estar ativado no httpd.conf) que permite, através de expressões regulares, redirecionar o usuário. Mas, como ele funciona?

A configuração das URLs amigáveis envolve a criação de um arquivo .htaccess. Esse arquivo deve estar no diretório no qual deve ser trabalhado. Vamos a configuração:


RewriteEngine On
RewriteRule ^(noticias)/(.+)$ index.php?id=$1&go=$2

Vamos entender o que faz as linhas acima.
A primeira aciona o módulo. Já a segunda é marcada por três tabulações:

A primeira tabulação traz a palavra RewriteRule, que indica que essa linha possui uma regra de redirecionamento.

A segunda tabulação monta a URL virtual. Segundo essa regra, qualquer URL noticias/teste será redirecionado para a terceira tabulação, index.php?id=$1&go=$2. Observe que $1 e $2, usadas na terceira tabulação, são na verdade a primeira (noticias) e a segunda (qualquer palavra) partes da URL virtual.

Mais do mesmo:
Continue lendo sobre expressões regulares.
Gerenciamento de URLs e URLs amigáveis – Esclarecendo dúvidas, por Bruno Torres
Documentação do mod_rewrite, pelo Apache


Posts relacionados:


2 comentários


Deixe uma resposta






Últimos textos do blog

Tagcloud

abraweb acadêmico actionscript ajax apache apple arteccom asp autosimulado backup benchmark beta bh blogosfera bookmarklet bookmarklets brasil browser censura chucknorris cms codestacker concurso crítica css dashboard deployment desenvolvimento design dicas divinópolis dotmac download dreamhost economia empreendedorismo empreendorismo encontro estatísticas extreme programming feedburner firefox fireworks flash flickr ftp game git globo gmail golive google greasemonkey guerrilha hack host howto htaccess html humor ie inss internet banking iphone ipod is® javascript jquery layout leopard linux listas live locomotive mac meme microsoft miguxês minasonrails mod_rails mp3 msn mysql off tropic opensocial opera orkut oscommerce parser passenger pc personalidade pesquisa php plugin plugins pog portfolio produtividade publicidade rails refurbished regex resenha review ria rss ruby rádio safari sandbox screencast screensaver script.aculo.us seo shoutcast silverlight software spam startup stevejobs suporte swf switch são paulo teste textmate trabalho tumblelog tumblr tutorial twitter ui uml usabilidade validação viral wallop web2.0 webalizer webdesign webdevelopment webkit webmail webmobile webobjects webstandards windows wordpress xml yahoo youtube

Veja todos os textos →