Os arquivos .htaccess (ou "arquivos de configuração distribuídos") fornecem uma maneira de alterar a configuração de um diretório, ou seja, colocar um arquivo contendo uma ou mais diretivas em um diretório de documento específico para afetar esse diretório e todos os seus subdiretórios. os comandos que podem ser usados são restritos. Os administradores podem defini-los através da diretiva AllowOverride do Apache.
- As diretivas em subdiretórios substituem as diretivas em diretórios de nível superior ou no arquivo de configuração do servidor principal.
- O .htaccess deve ser carregado em modo ASCII, preferencialmente com suas permissões definidas para 644.
Localização do documento de erro
Códigos de retorno de erro de solicitação de cliente comuns:
Autorização 401 necessária
403 Proibido
404 não encontrado
Método 405 não permitido
408 Solicitação expirou
411 Comprimento do conteúdo necessário
412 Falha na pré-condição
413 Solicitar entidade muito longa
414 Solicitação de URI muito longa
415 Tipo de mídia não suportado
Códigos de retorno de erro de servidor comuns:
500 Erro interno do servidor
Os usuários podem usar .htaccess para especificar sua própria página de lembrete de erro predefinida. Em geral, as pessoas podem configurar um diretório especial, como erros, para colocar essas páginas. Em seguida, adicione as seguintes instruções ao .htaccess:
Documento de erro 404 /errors/notfound.html
Documento de erro 500 /errors/internalerror.html
Uma instrução por linha. O significado da primeira instrução acima é para 404, ou seja, quando o documento requerido não for encontrado, a página deve ser exibida como a página notfound.html no diretório /errors. Não é difícil ver que o formato da sintaxe é:
Código de erro ErrorDocument/nome do diretório/nome do arquivo.extensão
Caso haja pouquíssimas informações a serem solicitadas, não há necessidade de criar uma página especial e utilizar o número HTML diretamente no comando, como no exemplo a seguir:
ErroDocumento 401 "
Você não tem permissão para acessar esta página, por favor desista!
"
Proteção por senha de acesso a documentos
Para utilizar o .htaccess para definir usuários de acesso e senhas correspondentes aos documentos de um diretório, a primeira coisa a fazer é gerar um documento de texto .htpasswd, por exemplo:
zheng:y4E7Ep8e7EYV
A senha aqui é criptografada e os usuários podem encontrar algumas ferramentas para criptografar a senha em uma codificação suportada por .htaccess. É melhor não colocar este documento no diretório www. Recomenda-se colocá-lo fora do documento do diretório raiz www, que é mais seguro.
Com o documento do usuário autorizado, você pode adicionar as seguintes instruções ao .htaccess:
Diretório do servidor para AuthUserFile .htpasswd
AuthGroupFile /dev/null (diretório que requer acesso autorizado)
AuthName Digite Senha
AuthType Basic (tipo de autorização)
require user wsabstract (usuários com permissão de acesso, se você quiser que todos os usuários da tabela tenham permissão, você pode usar require valid-user)
Observe que os colchetes são os comentários que você adicionou ao estudar.
Negar acesso de um IP
Se eu não quiser que um determinado departamento governamental acesse o conteúdo do meu site, posso excluí-lo adicionando o IP do departamento em .htaccess.
Por exemplo:
ordenar permitir, negar
negar de 210.10.56.32
negar de 219.5.45.
permitir de todos
A segunda linha nega um determinado IP e a terceira linha nega um determinado intervalo de IP, ou seja, 219.5.45.0~219.2.45.255
Quer rejeitar todo mundo? Basta usar negar de todos. Não apenas o IP, mas também o nome de domínio podem ser usados para defini-lo.
Proteja documentos .htaccess
Ao usar .htaccess para proteger um diretório com senha, ele contém o caminho para o arquivo de senha. Por razões de segurança, é necessário proteger o .htaccess para que outras pessoas não possam ver o seu conteúdo. Embora isso possa ser feito de outras maneiras, como permissões no documento. Porém, o próprio .htaccess também pode fazer isso, basta adicionar a seguinte diretiva:
ordenar permitir, negar
negar de todos
Redirecionamento de URL
Podemos redesenhar o site, mover documentos ou alterar o diretório. Neste momento, as visitas de motores de busca ou links de outros sites podem dar errado. Nesse caso, você pode usar o seguinte comando para redirecionar automaticamente a URL antiga para o novo endereço:
Redirecionar /diretório antigo/nome do documento antigo endereço do novo documento
Ou redirecione o diretório inteiro:
Redirecionar diretório antigo para novo diretório
Alterar o arquivo da página inicial padrão
Geralmente, os nomes de arquivo da página inicial padrão incluem padrão, índice, etc. No entanto, às vezes não há um arquivo padrão no diretório, mas um nome de arquivo específico, como pmwiki.php em pmwiki. Neste caso, é problemático para o usuário lembrar o nome do arquivo para acessá-lo. Novos nomes de arquivos padrão podem ser facilmente definidos em .htaccess:
DirectoryIndex novo nome de arquivo padrão
Também podem ser listadas múltiplas listas, com a ordem indicando a prioridade entre elas, por exemplo:
Nome do arquivo DirectoryIndex.html index.cgi index.pl padrão.htm
Evitar links quentes
Se você não gosta que outras pessoas vinculem suas próprias fotos e documentos em suas páginas da web, você também pode fazer isso através do comando htaccess.
As instruções necessárias são as seguintes:
RewriteEngine ativado
ReescreverCond% !^$
RewriteCond % !^http://(www.)?meudominio.com...*$ [NC]
RewriteRule .(gif|jpg)$ - [F]
Se você acha que não fica bem ter uma claraboia aberta na página de outra pessoa, você pode usar uma imagem:
RewriteEngine ativado
ReescreverCond% !^$
RewriteCond % !^http://(www.)?meudominio.com...*$ [NC]
RewriteRule .(gif|jpg)$ http://www.mydomain.com/replacement nome do arquivo de imagem [R,L]
fonte: http://wsabstract.com/howt...