Nov-07 16

Ativando o mod_rewrite

Enviado por: Thales RB. .     1 comentário.     Categorias: Desenvolvimento, PHP

O que é mod_rewrite?

É um módulo escrito para o servidor Apache, responsável pela reescrita de URLs em páginas Web. Que fornece uma regra simples sem níveis de seção na URL.

Hoje em dia, com a popularização de assuntos como SEO, usabilidade e acessibilidade, esta prática se tornou comum e está cada vez mais sendo utilizada por grande portais.

Antes de mais nada, para que o módulo mod_rewrite funcione, obviamente você deve ter configurado e ativado no seu servidor Apache.

Obs: Caso você use o Wordpress ou algum sistema que use essa função e ao tentar abrir a pagina de um erro então crie o arquivo .htaccess conforme explicado abaixo.

Criando o .htaccess

Crie um arquivo com o nome “.htaccess” (exatamente desta forma), e mova para a pasta raiz do seu domínio (ou onde queira implantar a reescrita). Em seguida, insira o código abaixo:

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?cod=$1

Entendendo o código:

RewriteEngine On = Ativa o suporte à reescrita
RewriteCond %{SCRIPT_FILENAME} !-f = Não aplica a condição para arquivos
RewriteCond %{SCRIPT_FILENAME} !-d = Não aplica a condição para diretórios
RewriteRule ^(.*)$ index.php?cod=$1 = Regra de reescrita onde qualquer string (.*) após a pasta, onde estiver o .htaccess, será interpretado por index.php passado na variável cod

Na prática, se você tem uma URL do tipo www.url.com.br/secao/subsecao/, será interpretada por www.url.com.br/index.php?cod=secao/subsecao/. E mais, você não terá limite de níveis para utilizar com as /.

Ativando no Apache

Para ativar o mod_rewrite no apache(ele vem desativado por padrão) faça o seguinte

No arquivo Conf/httpd.conf, procure pela linha:

#LoadModule rewrite_module modules/mod_rewrite.so

e descomente removendo o símbolo “#” do início da linha para ficar assim:

Procure também pela linha

AllowOverride None

e altere para

AllowOverride All

Para quem quer ler mais sobre o assunto, Pode ver aqui e aqui.

Compartilhe nos Sites Sociais: Adicionar esta notcia no Linkk Adicionar esta notcia no Rec6 Adicionar esta notcia no Ueba
Pingback on December 11th, 2007.

[…] eu estava usando o xampp e ele é bem tranquilo de se usar, mas como não estava funcionando o mod_rewrite resolvi instalar o php […]

Deixe um comentário

Os campos nome e e-mail são obrigatorios(o e-mail não será exibido), a URL é opcional.

Os comentários podem ter os seguintes comandos:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>