Mais exemplos de regras .htaccess

Outra série de exemplos de regras htaccess que podem servir para criar facilmente nossos padrões de expressões regulares.

Por Miguel Angel Alvarez - Tradução de JML


Publicado em: 11/6/08
Valorize este artigo:
No artigo anterior estivemos dando uma série de exemplos para a criação de expressões regulares que podemos utilizar em arquivos .htaccess. Vimos uma série de padrões simples e agora vamos continuar mostrando outros padrões, também simples, porém um pouco mais elaborados.

Antes de tudo, deve-se ler o artigo anterior, caso ainda não o tenham feito: Padrões de expressões regulares para htaccess.

Exemplo 4 de regra htaccess

RewriteRule ^pratos/pais_([a-zA-Z_-]+).php$ codigo/pratos_pais.php?nome_pais=$1

Esta regra é similar à anterior, porém agora sim que estamos aceitando que alguns caracteres do nome do país venham em minúsculas. Por exemplo, aceita estas URLs:

www.meudominio.com/pratos/pais_Espanha.php
www.meudominio.com/pratos/pais_Reino-Unido.php

Que redirecionaria a URLs como estas:

www.meudominio.com/codigo/pratos_pais.php?nome_pais=Espanha
www.meudominio.com/codigo/pratos_pais.php?nome_pais=Reino-Unido

Exemplo 5 de regra htaccess

RewriteRule ^pratos/nome_([a-zA-Z0-9_-]+).php$ codigo/pratos_nome.php?nome=$1

Esta regla .htaccess complica ainda um pouco mais a regra anterior, com a possibilidade que também se coloquem números na expressão.

Redirecionará URLs como estas:

www.meudominio.com/pratos/nome_paella.php
www.meudominio.com/pratos/nome_PAELLA_2.php
www.meudominio.com/pratos/nome_paella-mariscos.php
www.meudominio.com/pratos/nome_Arroz3Delicias.php

Que enviará internamente o processamento dessas a estes endereços:

www.meudominio.com/codigo/pratos_nome.php?nome=paella
www.meudominio.com/codigo/pratos_nome.php?nome=PAELLA_2
www.meudominio.com/codigo/pratos_nome.php?nome=paella-mariscos
www.meudominio.com/codigo/pratos_nome.php?nome=Arroz3Delicias

Exemplo 6 de regra htaccess

Podemos repetir este esquema visto exemplo anterior as vezes que quisermos em URLs que tiverem uma série de diretórios, separados por barras. Será algo como isto:

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+).html$ codigo/maiscodigo/processamento.php?parametro1=$1¶metro2=$2¶metro3=$3

Isto aceita endereços que tenham três diretórios distintos, um atrás do outro, separado claro pelas barras. Os nomes dos diretórios aceitam números, letras maiúsculas e minúsculas e hífens médios e baixos.

Aceita endereços tão variados como estes:

www.meudominio.com/1/2/3.html
www.meudominio.com/oquefor/OUTRACOSA/122.html
www.meudominio.com/a_b_c_1/A-B-C-2/A-b_C_987.html

Internamente, htaccess processará essas regras e redirecionará a url como estas:

www.meudominio.com/codigo/maiscodigo/processamento.php?parametro1=1&parametro2=2&parametro3=3
www.meudominio.com/codigo/maiscodigo/processamento.php?parametro1=oquefor&parametro2=OUTRACOISA&parametro3=122
www.meudominio.com/codigo/maiscodigo/processamento.php?parametro1=a_b_c_1&parametro2=A-B-C-2&parametro3=A-b_C_987






Usuários :    login / registro
Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato