Existem várias formas de redirecionar os acessos do seu site.
A idéia deste artigo é de apenas orientar os usuários com códigos prontos, mas é de responsabilidade total do usuário desses sistemas testa-los. Qualquer problema referente a eles é de total responsabilidade do cliente.
Conheça alguns deles:
Redirecionando o domínio principal da conta: RedirectMatch ^/$ http://dominio.com.br/diretorio
Redireciona “www.dominio.com.br” para “www.dominio.com.br/loja”
Redirect 301 /pagina.html http://www.seudominio.com.br/novapagina.html
Redireciona o acesso ao arquivo “pagina.html” para “http://www.seudominio.com.br/novapagina.html”
Redirect 301 / http://www.dominio.com.br/
Redireciona o acesso de sua conta para o endereço “http://www.dominio.com.br/”
RedirectMatch 301 (.*)\.html$ http://www.seudominio.com.br$1.php
Caso você tenha mudado todos os seus arquivos de extensão “.html” para “.php” e tenha links antigos com referências para os “.html”, você pode evitar que o usuário acesse uma página que não existe mais com essa linha; Ela redireciona qualquer acesso a um “.html” substituindo “.html” para “.php”.
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^site\.com\.br
RewriteRule (.*) http://site.com.br/$1 [R=301,L]
Remove o “www” do endereço de acesso, isto é, redireciona quem acessou pelo endereço “www.seusite.com.br” para “seusite.com.br”; Isso é bom para padronizar o acesso ao seu site e ajuda na indexação dos buscadores, fazendo-os indexar apenas links sem “www”.
Para alterar a linha 4 (domínio, no exemplo site\.com\.br), adicione “\” antes de cada “.”, assim o “.” será interpretado como ponto e não parte de uma expressão regular.
Exemplo: mudando site.com.br para meusite.net.br.teste.exemplo (supondo que exista este domínio): RewriteCond %{HTTP_HOST} !^meusite\.net\.br\.teste\.exemplo
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^seusite.com.br [NC]
RewriteRule ^(.*)$ http://www.seusite.com.br/$1 [L,R=301]
Adiciona “www” ao endereço acessado sem o “www”. A idéia de padronizar surge da mesma idéia do código anterior a esse.
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{THE_REQUEST} ^[A-Z]{3, 9}\ /.*index\.php\ HTTP/
RewriteRule ^(.*)index\.php$ /$1 [R=301,L]
Esconde o acesso ao arquivo “.index.php” para “/”.
Exemplos: www.dominio.com.br/index.php > www.dominio.com.br; www.meusite.com.br/teste/index.php > www.meusite.com.br/teste/
DirectoryIndex paginainicial.php
Se colocado em um determinado diretório, faz com que ao acessarem aquele diretório, ao invés do servidor enviar o acesso a um arquivo do tipo “index”, como é o padrão, ele envia para “paginainicial.php”, como se redefinisse o nome do arquivo “index.php”.
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.meusiteseguro.com.br/$1 [R,L]
Reenvia o acesso ao seu site feito através do “http” para o “https”.
Por exemplo: http://www.dominio.com.br > https://www.dominio.com.br/
Redirecionar para Pasta
RewriteEngine on
RewriteCond %{HTTP_HOST} ^seu-dominio.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.seu-dominio.com$
RewriteCond %{REQUEST_URI} !pasta/
RewriteRule (.*) /pasta/$1 [L]
Nas linhas acima, deve-se substituir o seguinte:
seu-dominio.com – Escreva o seu próprio nome de domínio
pasta – Escreva o nome da sub-pasta onde está o seu site