A partir deste guia, você poderá aprender sobre os arquivos .htaccess e suas funções, e usá-los para otimizar seu site. Embora .htaccess seja apenas um arquivo, ele pode alterar as configurações do servidor, permitindo que você faça muitas coisas diferentes. O recurso mais popular é que você pode criar uma página personalizada de “erro 404”. .htaccess não é difícil de usar, basta adicionar algumas instruções simples a um documento de texto.
Primeiro você precisa determinar se o host oferece suporte
Isso pode ser difícil de responder com uma resposta simples. Muitos hosts suportam .htaccess, mas na verdade não o declaram especificamente, e muitos outros tipos de hosts são capazes, mas não permitem que seus usuários usem .htaccess. De modo geral, se o seu host usa um sistema Unix ou Linux, ou qualquer versão do servidor web Apache, .htaccess é teoricamente suportado, embora seu provedor de hospedagem possa não permitir que você o use.
Um bom sinal para saber se o seu host permite .htaccess é se ele suporta proteção por senha de pasta. Para realizar esta função, o provedor de hospedagem precisa usar .htaccess (é claro, em alguns casos, embora forneçam proteção por senha, eles não permitem o uso de .htaccess). Se você não tem certeza se o seu host suporta .htaccess, a melhor maneira é fazer upload do seu próprio arquivo .htaccess para ver se funciona ou enviar um e-mail diretamente ao seu provedor de serviços de hospedagem para consulta.
O arquivo .htaccess (ou "arquivo de configuração distribuído") no sistema Apache fornece um método para 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 atuar neste diretório e todos seus subdiretórios. Como usuário, os comandos que podem ser usados são restritos. Os administradores podem defini-los através da diretiva AllowOverride do Apache.
As diretivas nos subdiretórios substituem as diretivas nos diretórios de nível superior ou no arquivo de configuração do servidor principal.
.htaccess deve ser carregado em modo ASCII, de preferência com permissões definidas como 644.
.htaccess pode fazer muitas coisas, incluindo: proteção de pastas com senha, redirecionamento automático de usuários, páginas de erro personalizadas, alteração de extensões de arquivo, banimento de usuários de endereços IP específicos, permissão apenas de usuários de endereços IP específicos, listagens de diretórios banidas e uso outros arquivos como arquivos de índice.
A criação de arquivos .htaccess pode causar algumas dificuldades. Escrever arquivos é fácil, você só precisa escrever o código apropriado em um editor de texto (como o WordPad). A verdadeira dificuldade pode ser salvar o arquivo, já que .htaccess tem um nome de arquivo estranho (na verdade não tem um nome de arquivo, apenas uma extensão de 8 letras) e não é aceitável em alguns sistemas (como o Windows 3.1). Na maioria dos sistemas operacionais, tudo que você precisa fazer é salvar o documento como: “.htaccess” (incluindo as aspas). Se isso não funcionar, você precisará dar outro nome (por exemplo, htaccess.txt), carregá-lo no servidor e usar o software FTP para renomeá-lo diretamente.
avisar
Antes de usar o .htaccess, devo dar alguns avisos. Embora seja absolutamente improvável que o uso de .htaccess em um servidor cause qualquer problema (simplesmente não funciona se algo estiver errado), você deve ter um cuidado especial se usar extensões do Microsoft FrontPage. Como as próprias extensões do FrontPage usam .htaccess, você não pode editá-lo e adicionar suas próprias informações. Se você realmente precisar disso (não recomendado, mas possível), primeiro baixe o arquivo .htaccess do servidor (se existir) e depois adicione seu código na frente dele.
2|Configuração do arquivo .httacces
O primeiro uso do .htaccess que abordarei são as páginas de erro personalizadas. Isso permitirá que você tenha sua própria página de erro personalizada (por exemplo, quando um arquivo não é encontrado) em vez da página de erro fornecida pelo seu provedor de serviços. Ou não há páginas. Isso fará com que seu site pareça mais profissional quando algo der errado. Você também pode usar um script para notificá-lo quando ocorrer um erro (por exemplo, eu uso o script PHP do Free Webmaster Help para me enviar um e-mail automaticamente quando uma página não puder ser encontrada).
Qualquer código de erro de página que você conhece (como 404 Page Not Found) pode ser transformado em uma página personalizada adicionando o seguinte texto ao arquivo .htaccess:
ErrorDocument errornumber /file.html
Por exemplo, se eu tiver um arquivo nofound.html em meu diretório raiz, quero usá-lo como página de erro 404:
Documento de erro 404 /notfound.html
Se o arquivo não estiver no diretório raiz do site, você só precisa definir o caminho para:
Documento de erro 500 /errorpages/500.html
Aqui estão alguns dos erros mais comuns:
Códigos de retorno de erro de solicitação de cliente comuns:
400 - Solicitação incorreta Solicitação incorreta
401 Autorização necessária requer verificação
403 Proibido
404 Não encontrado Página não encontrada
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 Erro interno do servidor
Em seguida, tudo o que você precisa fazer é criar um arquivo que seja exibido quando ocorrerem erros e depois carregá-lo junto com .htaccess.
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:
ErrorDocument 401 "Você não tem permissão para acessar esta página, desista!"
Às vezes, por algum motivo, não há arquivo de índice em seu diretório, o que significa que quando alguém digitar o caminho do diretório na barra de endereço do navegador, todos os arquivos do diretório serão exibidos, o que deixará uma marca em seu site . Reduza os riscos de segurança.
Para evitar isso (sem ter que criar vários novos arquivos de índice), você pode impedir que a listagem de diretórios seja exibida digitando o seguinte comando em seu documento .htaccess: Índices de opções
Em alguns casos, você pode querer permitir apenas que usuários com determinados IPs acessem seu site (por exemplo, permitir apenas que usuários com um ISP específico entrem em um diretório) ou pode querer bloquear determinados endereços IP (por exemplo, por Low usuários de nível superior são mantidos fora do seu quadro de mensagens). Claro, isso só funciona se você souber o endereço IP que deseja bloquear; no entanto, a maioria dos usuários online hoje em dia usa endereços IP dinâmicos, portanto, essa não é uma forma comum de limitar o uso.
Você pode banir um endereço IP usando o seguinte comando:
negar de 000.000.000.000
000.000.000.000 aqui é o endereço IP bloqueado. Se você especificar apenas alguns deles, poderá bloquear todo o segmento de rede. Se você inserir 210.10.56., todos os endereços IP de 210.10.56.0 a 210.10.56.255 serão bloqueados.
Você pode permitir que um endereço IP acesse o site usando o seguinte comando:
permitir de 000.000.000.000
O endereço IP permitido é 000.000.000.000. Você pode bloquear todo o segmento de rede da mesma forma que bloqueia o endereço IP.
Se quiser impedir que todos acessem o diretório, você pode usar:
negar de todos
No entanto, isso não afeta o uso de documentos neste diretório pelo script.
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á arquivo padrão no diretório, mas um nome de arquivo específico, como w3sky.PHP em w3sky. Neste caso, é difícil 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
Talvez você não queira continuar usando index.htm ou index.html como arquivo de índice do diretório. Por exemplo, se o seu site usa arquivos PHP, você pode querer usar index.PHP como documento de índice do diretório. Claro, você não precisa se limitar ao documento "índice". Se quiser, usando .htaccess você pode até definir foofoo.balh como seu documento de índice!
Esses arquivos de índice que se substituem mutuamente podem ser organizados em uma lista e o servidor pesquisará da esquerda para a direita para verificar qual documento existe no diretório real. Se nenhum for encontrado, a listagem de diretórios será exibida (a menos que você tenha desativado a exibição de listagens de arquivos de diretório).
Índice DirectoryIndex.Índice PHP.PHP3 mensagembrd.pl index.html index.htm
Um dos recursos mais úteis do .htaccess é redirecionar solicitações para diferentes documentos dentro ou fora do mesmo site. Isso é extremamente útil quando você altera o nome de um arquivo, mas ainda deseja que os usuários o acessem usando o endereço antigo. Outra aplicação (que considero útil) é o redirecionamento para uma URL longa, por exemplo, na minha newsletter posso usar uma URL muito curta para apontar para o meu link de afiliado. Aqui está um exemplo de arquivo de redirecionamento:
Redirecionar /local/de/root/file.ext
http://www.w3sky.com/new/file/123.html
No exemplo acima, para acessar o arquivo denominado oldfile.html no diretório raiz, digite:
/oldfile.html
Para acessar arquivos em um subdiretório antigo, digite:
/old/oldfile.html
Você também pode usar .htaccess para redirecionar diretórios inteiros de sites. Se você tiver um diretório chamado olddirectory em seu site e criou o mesmo documento acima em um novo site http://www.w3sky.com/newdirectory/ , você pode copiar todos os arquivos no diretório antigo Faça um redirecionamento sem ter que declará-los um por um:
Redirecionar /diretório antigo http://www.w3sky.com/newdirectory
Dessa forma, quaisquer solicitações direcionadas ao diretório /olddirectory no site serão redirecionadas para o novo site, incluindo as informações adicionais de URL anexadas. Por exemplo, alguém digita:
As solicitações serão redirecionadas para:
Este recurso é extremamente poderoso se usado corretamente.
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
Embora existam vários usos para .htaccess, de longe o mais popular, e provavelmente o mais útil, é usá-lo para proteção confiável por senha de diretórios de sites. Embora JavaScript e outros também possam fazer isso, apenas .htaccess tem segurança perfeita (ou seja, os visitantes devem saber a senha antes de poder acessar o diretório e não há "backdoor").
Usar .htaccess para proteger um diretório com senha é um processo de duas etapas. A primeira etapa é adicionar as linhas de código apropriadas ao seu documento .htaccess e, em seguida, colocar o documento .htaccess no diretório que você deseja proteger:
AuthName “Nome da seção”
AuthType Básico
AuthUserFile /full/caminho/para/.htpasswd
Exigir usuário válido
Pode ser necessário modificar algumas partes do conteúdo acima com base no seu site, como substituir “Nome da Seção” pelo nome da seção protegida “Área de Membros”.
/full/parth/to/.htpasswd deve ser substituído pelo caminho completo do servidor apontando para o arquivo .htpasswd (mais sobre este documento posteriormente). Se você não souber o caminho completo para o seu espaço web, pergunte ao administrador do sistema.
A proteção de diretórios por senha é mais problemática do que outros recursos do .htaccess, porque você também deve criar um documento contendo um nome de usuário e senha para acessar seu site, e as informações relevantes (por padrão) estão localizadas em um documento chamado .htpasswd. Assim como .htaccess, .htpasswd é um documento sem nome de arquivo e com extensão de 8 bits que pode ser colocado em qualquer lugar do seu site (a senha deve ser criptografada neste momento), mas é recomendável salvá-lo fora da raiz da web diretório do seu site, para que não possa ser acessado pela rede. 1516501417
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 as seguintes instruções: 1516501417
ordenar permitir, negar
negar de todos
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:
forja:y4E7Ec8e7EwV
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.
Após a criação do documento .htpasswd (que pode ser criado com um editor de texto), o próximo passo é inserir o nome de usuário e a senha de acesso ao site, que deverá ser:
nome de usuário:senha
A posição de “senha” deve ser a senha criptografada. Você pode obter senhas criptografadas de várias maneiras: uma é usar um script permanente disponível on-line ou escrever uma você mesmo; outro bom serviço de criptografia de nome de usuário/senha é através do site KxS, que permite inserir seu nome de usuário e senha e, em seguida, gerar. uma senha formatada corretamente.
Para vários usuários, você só precisa adicionar uma nova linha com o mesmo formato no documento .htpasswd. Além disso, existem alguns programas de script gratuitos que podem gerenciar facilmente arquivos .htpasswd e adicionar/remover usuários automaticamente, etc.
Quando você tenta acessar um diretório protegido por uma senha .htaccess, seu navegador exibirá a caixa de diálogo padrão de nome de usuário/senha. Se você não gostar deste método, alguns scripts permitem incorporar caixas de entrada de nome de usuário/senha na página para autenticação. Você também pode inserir o nome de usuário e a senha (não criptografada) na caixa de URL do navegador da seguinte maneira:
http://nome de usuário: senha@ www.w3sky.com/directory/
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
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;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
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ http://www.w3sky.com/Replacement nome do arquivo de imagem [R,L]
Este método serve para redirecionar todo o tráfego do seudominio.com para www.seudominio.com (ou vice-versa). Na verdade, algumas pessoas no exterior pensam que este método não é útil para o PageRank. Acho que é porque eles viram que existe uma ferramenta de domínio preferencial nas ferramentas de administrador do Google, que pode especificar os rastreadores do Google para usar www.seudominio.com ou seudominio.com como o domínio preferido para rastreamento e classificação, e o redirecionamento parece desnecessário. Mas muitas pessoas realmente confirmaram que isso é eficaz. De qualquer forma, ninguém disse que esse método causará qualquer dano ao SEO ou ao pagerank.
Escreva em .htaccess:
Opções +FollowSymlinks Todos -Índices
reescreverEngine ligado
reescreverBase/
ReescreverCond %{HTTP_HOST} ^domain.com$
ReescreverRegra ^(.*)$ http://www.domain.com/ $1 [R=301,L]
Remoção forçada de 3w
A seguir, tomamos o WordPress como exemplo. Em outras situações, você pode consultá-lo e resolvê-lo sozinho. Geralmente há um arquivo .htaccess no diretório do WordPress. Caso contrário, crie um manualmente. Se você configurar o link permanente, o conteúdo em .htaccess será o seguinte:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Não vamos nos preocupar com o que isso significa especificamente, basta adicionar abaixo da linha RewriteBase /:
RewriteCond %{HTTP_HOST} ^ www.yourdomain.tld $ [NC]
RewriteRule ^(.*)$ http://yourdomain.tld/ $1 [R=301,L]
E pronto. Claro, substitua seudominio.tld pelo seu próprio nome de domínio. As duas linhas acima significam reescrever o formulário www.seudomínio.tld em seudomínio.tld e redirecionar permanentemente todos os links que acessam o primeiro para o último.
É obrigatório adicionar www antes do nome de domínio
Se você realmente insiste em adicionar www na frente, minhas palavras acima serão em vão e expresso meu pesar. Mas você pode. Basta alterar as duas linhas de código adicionadas acima para isto:
RewriteCond %{HTTP_HOST} ^yourdomain.tld$ [NC]
RewriteRule ^(.*)$ http://www.yourdomain.tld/ $1 [R=301,L]
.htaccess é uma ferramenta poderosa que os administradores de sites podem usar. Possui mais variações para atender a diferentes finalidades, economizando tempo e melhorando a segurança do site.
Instruções especiais para .htaccess
* Para habilitar .htaccess, você precisa modificar httpd.conf, habilitar AllowOverride e usar AllowOverride para restringir o uso de comandos específicos.
* Se precisar usar um nome de arquivo diferente de .htaccess, você pode usar a diretiva AccessFileName para alterá-lo. Por exemplo, se precisar usar .config, você pode configurá-lo no arquivo de configuração do servidor da seguinte forma:
AccessFileName.config
* Em geral, arquivos .htaccess não devem ser usados a menos que você não tenha acesso ao arquivo de configuração principal. Existe um mal-entendido muito comum de que a autenticação do usuário só pode ser obtida por meio de arquivos .htaccess. Na verdade, esse não é o caso. É totalmente viável e um bom método para gravar a autenticação do usuário no arquivo de configuração principal. Os arquivos .htaccess devem ser usados em situações em que o provedor de conteúdo precisa alterar a configuração do servidor para um diretório específico sem privilégios de root. Se o administrador do servidor não estiver disposto a modificar frequentemente a configuração, ele poderá permitir que os próprios usuários modifiquem a configuração por meio do arquivo .htaccess, especialmente se o ISP executar vários sites de usuários na mesma máquina e esperar que os próprios usuários possam alterar a configuração. . No entanto, você geralmente deve evitar o uso de arquivos .htaccess sempre que possível. Qualquer configuração que você deseja colocar no arquivo .htaccess pode ser colocada na seção <Diretório> do arquivo de configuração principal e é mais eficiente. Existem dois motivos principais para evitar o uso de arquivos .htaccess: desempenho e segurança.
Em anexo: conexão da ferramenta .htaccess
Gerador de arquivo .htaccess online
http://cooletips.de/htaccess/
Capaz de gerar arquivos .htaccess online, é muito simples configurar redirecionamentos, arquivos de erros de sistema, etc.
Editor on-line do editor .htaccess
Codificação padrão personalizável, páginas de erro, etc.