Como posso criar um ficheiro htaccess para reescrever um URL?

Procédure

O que é a reescrita de URL?

A reescrita de URL é um assunto complexo mas muito importante para um sítio Web. O objetivo da reescrita de URL é múltiplo:

  • Melhorar a referenciação do seu sítio Web
  • Simplificar a navegação no seu sítio
  • Permitir a evolução do seu sítio
  • Gerir os redireccionamentos

Caso prático de redireccionamento de URL utilizando o htaccess

Como criar um redireccionamento simples?

RewriteEngine On RewriteRule .* testing.php

Este código irá redirecionar todos os pedidos para a página "testing.php".


Como redirecionar yourdomain.com para www.yourdomain.com?

RewriteEngine on Rewritecond %{HTTP_HOST} ^exemple.com$ Rewriterule ^(.*) http://www.votredomaine.com/$1 [QSA,L,R=301]


Como posso redirecionar para outra pasta sem mostrar a pasta de redireccionamento?

Pode ter movido o seu sítio web para outra pasta FTP e não quer que os seus visitantes saibam desta nova pasta. Isto irá forçar o redireccionamento para www.votredomaine.com quando na realidade deveria ser www.votredomaine.com/dossier.

RewriteEngine On RewriteBase / RewriteCond %{THE_REQUEST} /MinhaPasta/([^\s?]*) [NC] RewriteRule ^ %1 [L,NE,R=302] RewriteRule ^((?!MinhaPasta/).*)$ MinhaPasta/$1 [L,NC]


Reescrita de URLs

O módulo mod_rewrite pode ser usado para reescrever URLs.

RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !NondeLaPage.php RewriteRule .* NondeLaPage.php

Controlar o acesso aos ficheiros

Um ficheiro .htaccess é frequentemente utilizado para restringir ou negar o acesso a ficheiros e pastas. Para o fazer, proceda da seguinte forma:

negar de todos

No entanto, é possível negar o acesso a um endereço IP específico usando as seguintes directivas:

order allow,deny deny from XXX.XXX.XXX.XXX allow from all

ou vários endereços IP, se desejar:

allow from all deny from 145.186.14.122 deny from 124.92.14.086

Configurar um redireccionamento para tablets e smartphones

Pode redirecionar os utilizadores de tablets e smartphones para uma página Web ou diretório específico utilizando as seguintes directivas:

RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$ RewriteRule ^(.*)$ http://votredomaine.com/dossier [R=301] RewriteCond %{HTTP_USER_AGENT} ^.*Android.*$ RewriteRule ^(.*)$ http://votredomaine.com/dossier [R=301]

Forçar a gravação de um documento

Se quiser forçar os utilizadores a descarregar ficheiros em vez de os apresentar no browser, pode utilizar as seguintes directivas:

AddType application/octet-stream .csv AddType application/octet-stream .xls AddType application/octet-stream .doc AddType application/octet-stream .avi AddType application/octet-stream .mpg AddType application/octet-stream .mov AddType application/octet-stream .pdf

Também pode colocar tudo na mesma linha, como se segue:

AddType application/octet-stream .avi .mpg .mov ;pdf .xls .mp4

Desativar ou ativar a pesquisa de directórios

# Desativar a navegação na diretoria Opções Todos -Índices # Ativar a navegação na diretoria Opções Todos +Índices

Alterar os cabeçalhos e o idioma do Charset.

Pode alterar o Charset e o idioma utilizando as seguintes directivas:

AddDefaultCharset UTF-8 DefaultLanguage en-GB

Armazenamento em cache com mod_expires

O módulo mod_expires do Apache permite-lhe definir intervalos de expiração para diferentes tipos de conteúdo no seu sítio Web. Por exemplo, pode utilizar as directivas mod_expires para dizer aos navegadores para colocarem os ficheiros de imagem em cache durante uma hora, os ficheiros Javascrpt durante uma quinzena e os ficheiros CSS durante dois meses.


     ExpiresActive On ExpiresByType image/png "acesso 1 hora" ExpiresByType image/gif "acesso 1 hora" ExpiresByType image/jpeg "acesso 1 hora" ExpiresByType text/javascript "acesso 2 semanas" ExpiresByType text/css "acesso 2 meses" ExpiresByType text/html "modificação 4 horas" ExpiresDefault "acesso 2 dias"

Avaliar este artigo :

2,5/5 | 13 opinião

Este artigo foi útil para si ?

Article utileSim

Article non utileNão

Vous souhaitez nous laisser un commentaire concernant cet article ?

Si cela concerne une erreur dans la documentation ou un manque d'informations, n'hésitez pas à nous en faire part depuis le formulaire.

Pour toute question non liée à cette documentation ou problème technique sur l'un de vos services, contactez le support commercial ou le support technique

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Artigos semelhantes

5mn leitura

Como posso criar e utilizar um ficheiro .htaccess com o Painel LWS?

0mn leitura

Como configurar o SMTP num CMS

0mn leitura

O seu formulário de contacto não funciona e não recebe qualquer mensagem de correio eletrónico?

0mn leitura

Como posso atualizar o Wordpress para a versão mais recente?


Fazer uma pergunta à equipa do LWS e à sua comunidade