URL’s amigáveis
29/07/2008Com o desenvolver da internet e suas inúmeras “versões”, se é que podemos dizer assim, foram inclusas diversas metodologias de navegação e usabilidade que são um pouco antigas e apenas não eram utilizadas ou ainda não são implementadas por muitos. Com vocês, as famosas “urls amigáveis”.
Muitos já sofreram ou ainda sofrem com sistemas que usam no seu dia-a-dia quando escutam perguntas do tipo :
- Me passa o link?
A primeira coisas que pensamos sem piscar é justamente pensar na url que era apresentada no momento da sua navegação, que muito chamou a sua atenção mas é quase impossível lembrar o caminho exposto no campo de url do seu browser por completo, pois no máximo só passa pela nossa cabeça na maioria dessas situações o maldito endereço do site. Aí vem a sua resposta…
- Eu vou mandar para o seu email por que agora eu não lembro o endereço completo.
Que mico! Você falou sobre o conteúdo da url, disse que “X” coisa era excepcional, que “Y” coisa falava muito bem sobre tal assunto e tudo mais, mas na hora de permitir que o seu amigo pudesse visualizar justamente aquilo que tanto te impressionou, tudo desanda. E ele ali com o palm, celular, laptop ou um simples papel para anotar e nada, restando apenas ter que esperar pelo email.
As urls amigáveis são recursos disponíveis por alguns servidores e tratadas por aplicações que foram pensadas para tal ação.
Servidores web como o Nginx, Lighttpd e Apache possuem um recurso conhecido rewrite engine.
Os módulos que permitem rewrite em servidores web visam construir supostas rotas visuais para tratamento de diferentes páginas e redirecionamentos, tratando os diversos segmentos da página visitada como parâmetros para a construção de uma página específica.
Vamos logo para um exemplo presente no cotidiano de pessoas que utilizam o Orkut. Afinal, quantas vezes você mesmo já não tentou lembrar de alguma página que te chamou atenção neste site?
Atualmente, quando entramos na página de alguma comunidade temos um caminho montado na url da seguinte forma:
Lendo a url acima fica fácil de entender que este caminho é de alguma comunidade apenas pelo “Community.aspx”, mas e para lembrar do parâmetro passado pela variável que vem a seguir? O que será que significa o “Main#”?
Agora vamos para uma idéia mais simples, imaginando o mesmo sistema em um servidor onde ambos foram pensados para se ter urls amigáveis.
http://www.orkut.com.br/community/main/perfects-do-orkut
Impressionante a diferença, não? Vai dizer que assim não ficou mais fácil de responder a pergunta que o seu amigo te fez aí em cima?
Com esta estrutura temos 3 diferentes segmentos na nossa url, onde:
- community = área que estamos no site
- main = a página principal da área “community”
- perfects-do-orkut = o parâmetro esperado para montar a página principal da área que estamos navegando
O site que serviu de base para o exemplo, apesar de ser desenvolvido em uma linguagem desenvolvida pela Microsoft e conseqüentemente está funcionando em um servidor Windows, nada impede que seja repensada e sua estrutura para ser alterada, pois dizem por aí que existe um módulo para rewrite de url’s em servidores IIS. Eu não levo fé, mas se realmente existir seria interessante se o Google, como atual administrador do Orkut, pudesse pensar um pouco sobre isto.
Logo abaixo você poderá ler um pouco mais sobre urls amigáveis e entender melhor sobre o seu funcionamento e vantagens que se pode ter no desenvolvimento de sistemas com essa estrutura, agregando além de valor ao seu desenvolvimento, uma melhor posição em sistemas de busca e um melhor estudo para debug do seu código.
- Servidores
- Apache Mod_Rewrite
- Urls amigáveis
Até a próxima!