Criando um arquivo .htaccess
Tudo o que você precisa para criar um arquivo .htaccess é de um editor de texto qualquer, como o Notepad++ ou até mesmo o Bloco de Notas padrão do Windows. Crie um novo arquivo e então salve-o como “.htaccess” (sem aspas, obviamente, e com o ponto antes do nome). Dependendo do programa e do sistema operacional que você utilizar para a criação do arquivo, pode acontecer de ser gerado um arquivo chamado “.htaccess.txt”. Isto está errado, claro, mas é fácil consertarmos o “erro”: basta renomear o tal arquivo, removendo dele os caracteres desnecessários (no caso, “.txt“). E agora vamos às dicas de utilização, lembrando antes que várias delas exigem a utilização do módulo “mod_rewrite” no servidor. Verifique antes de tudo se ele se encontra habilitado no Apache.Bloquear hotlinks em imagens
Para evitar que outros utilizem imagens hospedadas em seu servidor, “linkando” diretamente e assim gastando a sua banda, use o seguinte código em seu .htaccess:Protegendo seu arquivo .htaccess
Para impedir o acesso ao .htaccess e aumentar ainda mais a segurança do seu site, basta adicionar o seguinte código a ele mesmo:Usando páginas de erro personalizadas
Para evitar que os visitantes caiam em páginas de erro padrão do Apache ou então nas famosas “404 Not Found” padrão, por exemplo (caso tentem acessar uma URL inexistente), você pode adicionar a seguinte linha ao seu .htaccess:Compressão via .htaccess
Caso você deseje utilizar compressão GZIP no servidor, para economizar banda, para “deixar os motores de busca mais felizes”, etc, insira o código abaixo em seu .htaccess, lembrando que para que ele funcione, o módulo mod_gzip deve estar habilitado no Apache:Listagem de arquivos e diretórios
Você pode também utilizar o .htaccess para evitar a listagem de diretórios. Para evitar que o conteúdo de um diretório seja exibido quando algum usuário o acessar (por exemplo, quando alguém acessa “www.seusite.com.br/nomedapasta” ou “www.seusite.com.br/imagens”. Use a linha de comando abaixo:Controlando o acesso a arquivos e diretórios
Digamos que você deseja evitar que terceiros acessem determinados arquivos e pastas em seu site. Você possui um script qualquer instalado, por exemplo, e deseja evitar que visitantes acessem sua pasta “includes”. Por outro lado, você precisa garantir que qualquer página do site em questão possa “chamar” sem problemas os arquivos contidos nesta pasta. Basta, então, adicionar um .htaccess com o seguinte conteúdo na tal pasta, no caso, a “includes”:Reescrevendo URLs – Tornando-as amigáveis
Com .htaccess, também podemos reescrever URLs. Podemos torná-las mais amigáveis, tanto para os motores de busca quanto para os visitantes. Digamos que você possua uma loja virtual e nela venda diversos produtos. Digamos, agora, que suas URLs possuem a seguinte estrutura:Removendo extensões de arquivos das URLs
Você pode também remover as extensões dos arquivos das URLs com um arquivo .htaccess. Por exemplo, ao invés de seu visitante visualizar algo como contato.php na barra de endereços do navegador, ele pode visualizar simplesmente “contato”. Use o código abaixo em um arquivo .htaccess:Proteger diretório com senha
Uma das funcionalidades mais usadas e bacanas do .htaccess: proteger um diretório qualquer com senha. Para acessar o diretório em questão (e, consequentemente, tudo o que estiver dentro dele), o visitante deverá informar um “usuário” e uma “senha”. Observe que aqui deveremos utilizar dois arquivos: o .htaccess e o arquivo que conterá as senhas, o .htpasswd . O .htaccess você já sabe como criar, e para criar o arquivo das senhas, o .htpasswd , utilize este gerador online (isto porque as senhas devem ser transformadas em hashs MD5). No site Htpasswd Generator, informe o “usuário” (username) e a “senha” (password). Em seguida clique no botão “Create .htpasswd file”. Repita o processo quantas vezes forem necessárias para transformar todas as senhas desejadas em hashs MD5. O gerador fornece o resultado logo em seguida, e é isto que você deve copiar e colar no arquivo .htpasswd (um conjunto de usuário e senha por linha). Cada conjunto de “usuário” e “senha” é mais ou menos igual ao exemplo abaixo:- AuthName: é uma mensagem que pode ser customizada conforme você desejar. Esta mensagem aparecerá na janela na qual serão solicitados os dados de login;
- AuthUserFile: caminho absoluto para o arquivo .htpasswd;