Há alguns posts atrás falei da importância de realizar um redirecionamento pelo servidor ou por alguma linguagem server-side, e que retornasse o código 301 para o navegador e robôs de busca.

Mas é possível fazer um redirecionamento usando o arquivo .htaccess. Além de redirecionar arquivos únicos, é possível realizar redirecionamento de diretórios completos com uma simples linha de código.

O que é o .htaccess

O .htaccess é um arquivo de configuração do servidor Apache. Como o Apache domina cerca de 80% dos servidores, provavelmente você poderá utilizar as vantagens desse arquivo de configuração - se a função estiver habilitada no Apache.

Porque do ponto na frente? No Unix/Linux, o ponto na frente de um arquivo indica que ele é um arquivo oculto, ou seja, provavelmente não será listado para os usuários, nem poderá ser acessado.

Redirecionando um simples arquivo

Com apenas uma linha é possível redirecionar um arquivo qualquer para outro domínio ou diretório. Veja o exemplo abaixo:

Redirect permanent /blog/arquivo.html http://blog.gustavopaes.net/arquivo.html

Salve o arquivo com o nome .htaccess - no Windows, salve com um nome qualquer e depois renomeie-o - e envie para a raiz de seu site.

O permanent - código 301 para o browser ou robôs de busca - indica que a mudança de endereço é permanente, ou seja, os buscadores irão remover qualquer referência da antiga página para a nova.

Redirecionando um diretório completo

Para redirecionar um diretório completo - incluindo os sub-diretórios - deve-se utilizar o RedirectMatch:

RedirectMatch permanent ^/antigo(.*)$ http://www.novo.net/

O RedirectMatch permite criar expressões regulares na procura por diretórios e arquivos. No caso acima, ele redirecionará tudo o que estiver dentro do diretório antigo - até o que não existe - para o novo endereço.

Redirecionando apenas um tipo de arquivo

Supondo que todos os .html de seu site passaram a ser .php. Uma simples regra com RedirectMatch resolverá seu problema:

RedirectMatch permanent ^/(.*).html$ http://www.site.net/$1.php

Conclusão

O arquivo .htaccess possui muitas outras funções bastante interessantes e que vale a pena dar uma estudada. Você pode, por exemplo, proteger um diretório com senha, definir páginas de erro, entre outras funções.

A função de redirecionamento evita ter que alterar configurações diretamente no servidor ou trabalhar com alguma linguagem server-side.

Leitura recomendada:
Apache Tutorial: .htaccess files
Apache Module mod_alias (em inglês)
Pesquisa no Google