Tutorial - Reescrever o URL de acesso ao meu site graças ao mod_rewrite através do ficheiro .htaccess

Ver como Markdown

Saiba como reescrever o URL de acesso ao seu site graças ao mod_rewrite através do ficheiro .htaccess

Objetivo

O "mod_rewrite" é um dos módulos disponíveis no servidor Web HTTP Apache. Apache é instalado em toda a nossa infraestrutura de alojamento partilhado. Este servidor web permite gerir o conjunto dos pedidos HTTP enviados para o seu alojamento web.

Por exemplo, é o Apache que recupera os pedidos HTTP gerados pelos browsers dos visitantes do seu site e que lhes devolve o conteúdo pedido pelos mesmos pedidos. De seguida, os browsers apresentam o conteúdo do seu website ao visitante.

O "mod_rewrite" permite, por exemplo, reescrever e reencaminhar:

  • um visitante que introduz o seu URL em "HTTP" diretamente para o URL do seu website em "HTTPS";
  • o conjunto dos URLs utilizados para o seu website para uma pasta ou um ficheiro específico;
  • um visitante que introduz o seu URL sem "www" diretamente para o URL do seu website com os "www".

O "mod_rewrite" oferece uma infinidade de possibilidades. Apresentamos a seguir alguns exemplos de utilização mais comuns.

Tip

Se pretender aprofundar os seus conhecimentos sobre a utilização do "mod_rewrite" do Apache ou se o exemplo que procura não está presente no tutorial que se seguirá, consulte a documentação oficial do Apache.

Descubra como reescrever o URL de acesso ao seu site graças ao mod_rewrite através do ficheiro .htaccess   

Requisitos

Instruções

Informações sobre a administração dos serviços OVHcloud e como encontrar a assistência adequada

Ao utilizar os guias da OVHcloud, tenha em conta as seguintes condições:

  • As instruções procuram fornecer o máximo de detalhes possível, mas não podem abranger todos os casos de utilização individuais. Poderá ser necessário adaptar as ações descritas às suas necessidades.
  • O ecossistema OVHcloud foi concebido para oferecer flexibilidade e liberdade de escolha. Os clientes são, por isso, responsáveis pela configuração correta e segura dos seus serviços. Para evitar a perda de dados, recomendamos vivamente a aplicação de estratégias de cópia de segurança a todos os seus dados importantes.
  • Os nossos guias e tutoriais podem fazer referência a software ou serviços de terceiros em combinação com as soluções OVHcloud. O suporte técnico fornecido pela OVHcloud não inclui a configuração de sistemas ou produtos fora da nossa responsabilidade. Isto inclui, entre outros:
    • Sistemas operativos e interfaces de utilizador (Windows, Debian, Plesk, etc.).
    • Qualquer outro software de terceiros (clientes FTP, software de e-mail, etc.).
    • Serviços oferecidos por outros fornecedores (DNS, API, interfaces de utilizador, etc.).

Para receber a assistência adequada em caso de problemas, siga estas orientações:

  • Procura aconselhamento personalizado ou pretende discutir um tema que não é abordado em detalhe na nossa documentação?
    Junte-se à comunidade OVHcloud para pesquisar o seu tema e falar com outros utilizadores.
  • Precisa de comunicar um incidente relativo ao seu serviço OVHcloud ou tem dificuldades na Área de Cliente OVHcloud?
    Crie um pedido de suporte no nosso Centro de Ajuda.
  • Necessita de assistência profissional para o seu projeto ou de ajuda com tarefas fora do âmbito do nosso suporte?
    Visite o nosso portal de parceiros para encontrar especialistas familiarizados com as soluções OVHcloud.
  • Procura informações mais detalhadas sobre os nossos níveis de suporte e Professional Services?
    Visite as nossas páginas web sobre os níveis de suporte OVHcloud e os OVHcloud Professional Services.

Pode participar na melhoria da nossa documentação:

  • Pretende partilhar comentários para melhorar uma página de guia ou comunicar informações insuficientes numa página específica?
    Utilize os botões «Esta página foi útil?» no final da página para nos informar.
  • Pretende propor uma atualização concreta da documentação?
    Utilize a função «Editar esta página», disponível no final da página e na barra lateral.

O ficheiro ".htaccess" no qual vai configurar o "mod_rewrite" do Apache pode ser colocado em várias pastas diferentes. Deve apenas respeitar a regra de um ficheiro ".htaccess" por pasta ou sub-pasta.

Os parâmetros definidos num ficheiro ".htaccess" aplicam-se ao diretório onde está presente, bem como a todos os seus sub-diretórios.

Para editar (ou criar) diretórios, aceda ao espaço FTP do seu alojamento. Caso seja necessário, consulte o guia "Aceder ao meu espaço de armazenamento".

Encontre aqui alguns exemplos entre os mais comuns de utilização do "mod_rewrite" do Apache. Alguns deles também podem favorecer o referenciamento SEO do seu website.

Reencaminhar todos os pedidos HTTP para um único ficheiro do seu site

Editar o ficheiro ".htaccess" presente na raiz do diretório que contém o seu website. Introduza o seguinte código no seu interior (substituindo no nosso exemplo test.php pelo nome do seu próprio ficheiro):

RewriteEngine On
RewriteRule .* test.php

No nosso exemplo, todos os pedidos efetuados para o seu website são reencaminhados para o ficheiro test.php .

Reencaminhar uma parte dos pedidos HTTP para um único ficheiro do seu website

Editar o ficheiro ".htaccess" presente na raiz do diretório que contém o seu website. Introduza o seguinte código no seu interior (substituindo no nosso exemplo os valores thetest e /test_wslash/test.php pelos nomes dos seus próprios ficheiros):

RewriteEngine On
RewriteRule thetest /test_wslash/test.php

No nosso exemplo, todos os pedidos HTTP que contenham /thetest são reencaminhados para o ficheiro /test_wslash/test.php.

Reencaminhar o seu domínio para o seu subdomínio em "www"

Esta regra de re-escritura força o endereço/URL do seu website a ser reescrito com o seu subdomínio em "www".

Editar o ficheiro ".htaccess" presente na raiz do diretório que contém o seu website. Introduza o seguinte código no seu interior (substituindo no nosso exemplo domain.tld pelo seu próprio domínio):

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.tld$
RewriteRule ^(.*) http://www.domain.tld/$1 [QSA,L,R=301]

Esta re-escritura de URL pode favorecer o referenciamento SEO do seu website.

Reencaminhar os pedidos para um dossier em particular sem apresentar o dossier em questão

Quando utiliza um alojamento partilhado OVHcloud, o seu nome de domínio (por exemplo: domain.tld) é declarado num site web presente no seu alojamento web. Isto é feito para mostrar o conteúdo de uma pasta-alvo também chamada pasta raiz. É esta pasta que contém os ficheiros do seu site web. Pode personalizar o nome desta pasta raiz no momento em que adiciona o site web ao seu alojamento através da sua área de cliente OVHcloud.

Consulte o nosso guia "Partilhar o alojamento entre vários sites" se quiser obter mais informações sobre o assunto.

Alguns utilizadores não colocam os seus websites diretamente na base do pasta raiz. Eles criam uma sub-pasta (por exemplo: MyWebsite) no seu pasta raiz para colocar o seu website.

Neste caso, o URL para aceder ao site terá a seguinte forma: http://domain.tld/MyWebsite

Se os ficheiros do seu site web não estiverem diretamente presentes na pasta raiz declarada para o seu site web na sua área de cliente OVHcloud e não quiser mostrar o nome da pasta na URL do seu site web, edite o ficheiro ".htaccess" localizado na raiz do diretório que contém o seu site web.

Introduza o seguinte código no seu interior (substituindo no nosso exemplo os valores domain.tld pelo seu nome de domínio e MyWebsite pelo nome da sua própria pasta):

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.tld
RewriteCond %{REQUEST_URI} !^/MyWebsite
RewriteRule ^(.*)$ /MyWebsite/

No nosso exemplo, isto obriga o endereço do seu site a ser do tipo http://domain.tld, ao passo que a página chamada é http://domain.tld/MyWebsite.

Reencaminhar automaticamente um visitante para o seu website em HTTPS quando o consulta com um URL em HTTP

Os certificados SSL permitem encriptar as trocas efetuadas em HTTP com o seu website. Isto impede que pessoas ou robôs maliciosos recolham os dados trocados entre o site e o visitante, como por exemplo dados bancários.

Se não dispõe de um certificado SSL, consulte o nosso guia sobre a gestão de um certificado SSL num alojamento partilhado OVHcloud.

Alguns dos seus visitantes podem esquecer-se de introduzir o URL de acesso ao seu site em https:// : isto representa um risco não negligenciável para os dados trocados entre o seu website e os seus browsers.

Para evitar isso, edite o ficheiro ".htaccess" presente na raiz do diretório que contém o seu website. Introduza o seguinte código no seu interior (substituindo no nosso exemplo domain.tld pelo seu próprio domínio):

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.domain.tld/$1 [R,L]

No nosso exemplo, todos os pedidos efetuados com um URL em "http://" serão automaticamente reescritos em "https://". Assim, os visitantes serão reencaminhados para o seu site em "https://".   

Quer saber mais?

Bloquear o acesso ao meu website para determinados endereços IP através de um ficheiro .htaccess

Proteger a interface de administração do seu site por um ficheiro .htaccess

Para serviços especializados (referenciamento, desenvolvimento, etc), contacte os parceiros OVHcloud.

Se pretender usufruir de uma assistência na utilização e na configuração das suas soluções OVHcloud, consulte as nossas diferentes ofertas de suporte.

Fale com nossa comunidade de utilizadores.

Esta página foi útil?