FGF-College-Work / Forum

:beer: Espaço dedicado a discussões e tira dúvida sobre disciplinas e conteúdo tecnológico.
MIT License
13 stars 4 forks source link

Como criar um redirecionamento pelo .htaccess? #155

Open marcialwushu opened 5 years ago

marcialwushu commented 5 years ago

Como criar um redirecionamento pelo .htaccess?

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


ORIGINAL