CucaDigital.com.br

URL Amigável no Apache + PHP

by Claudney on jan.21, 2009, under Dicas, PHP

url-amigavel-no-apache-php

URL amigável como o próprio nome diz, e uma forma de mostrar ao usuário uma forma mais intendível de quardar um link ou até mesmo memorizar alguma página.

Exemplos:

http://xxx.com.br/blog/blog1.php?title=caixa&more=1&c=1&tb=1&pb=1

http://www.xxxxx.com/forum/viewtopic.php?f=2&t=174&sid=769f93ca5ed4f8deedb1a63cbe0512af

Podem ser transformadas em:

http://xxx.com.br/caixa-magica-1-1

http://www.xxxxx.com/forum/com-utilizar-url-amigavel

Com isso pode aumentar a relevancia do conteudo para buscas em sites como o Google e Yahoo através dos SEO (Search Engine Optimization). Em português ele é conhecido como Otimização de Sites.

Então, vamos por a mão na massa e ver como podemos desfrutar desses recursos, se você ainda nao entendeu o que são as URL amigaveis acesse o link do wikpedia aqui.

Para testes foi utilizando o servidor http Apache 2 + PHP 5.2.6.

Vamos começar pelo httpd.com adicioando as seguintes linhas no final do arquivo
LoadModule rewrite_module modules/mod_rewrite.so
AddModule mod_rewrite.c

Em seguida vamos para o .htaccess
Geralmente fica localizado no Document Root do servidor caso ele não exista basta cria-lo, e acionar as configurações abaixo:

Options +FollowSymLinks
RewriteEngine on
RewriteRule noticia-(.*)-(.*)-(.*)\.htm$ /index.php?noticia=$1&titulo=$2&qualquer=$3

A opção Options +FollowSymLinks faz com que o servidor web faça a requisição do arquivo real no servidor , caso ele não exista será criado um link simbolico para ele para que não gere o erro 505.

A segunda opção ativa o grande segredo que é o MOD_REWRITE.

A terceira e última opção e o que monta a sua url amigavel cada um dos $ indicam os parametros que serao passados para a nova url exemplo:
http://xxx.com.br/?index.php?noticia=caixa&titulo=magica&qualquer=1 ficaria como http://xxx.com.br/noticia-caixa-magica-1.

Executando os procedimentos acima corretamente é só divertir, e esperar que suas visitas aumentem.

Mais informações sobre o MOD_REWRITE acesse o site do projeto Apache HTTP: http://wiki.apache.org/httpd/Rewrite



:, ,
2 comentários:
  1. diego

    meu servidor simplesmente nao funciona
    tenho o apache instalado em meu pc e nao pega
    d jeito nenhum

  2. Claudney

    primeiro passo é ver se no seu arquivo httpd.conf do apache esta carregando o módulo mod_rewrite.so, se estiver carregando verifique se a diretiva AllowOverride esta como All.

Postar Comentário



Esta procurando algo?

Use o formulário abaixo para realizar a sua pesquisa:

Assine nosso feed, e recebe tudas as novidades do nosso site diretamente no seu e-mail.

Comentários