Arquivo Htaccess - como criar uma instrução de arquivo .htaccess para iniciantes

impressão · Время на чтение: 13mínimo · por · Publicados · Atualizada

reproduzirOuça o artigo

Como criar um arquivo .htaccess.

arquivo htaccess - como criar um arquivo .htaccess para um iniciante? O arquivo .htaccess, via de regra, possui apenas a extensão sob Unix - sistemas. E beneficia os sites que executam o servidor Apache.

O Htaccess possui um conjunto de regras para um site específico no servidor. O arquivo controla muitas opções de configuração para o servidor web Apache. O Apache é um software de servidor amplamente utilizado para sistemas operacionais de plataforma cruzada.

Embora a sintaxe que ele usa possa ser um pouco confusa no início, esse arquivo .htaccess pode fazer muitas coisas úteis. Alguns de seus recursos incluem redirecionamento, proteção por senha, restrição de acesso com base em determinadas condições e muito mais. Nesta postagem, veremos como criar e configurar um arquivo .htaccess e implementar alguns dos usos mais comuns para ele.

Instruções para criar um arquivo .htaccess

configurações do arquivo .htaccess.

htaccess é comumente conhecido como um "arquivo de ponto" porque começa com um ponto. Os arquivos dot são quase sempre um arquivo de configuração. Esses arquivos podem ser para um sistema operacional ou um software. Por padrão, o sistema operacional oculta os arquivos de ponto nas janelas de pesquisa ou em qualquer gerenciador de arquivos do sistema. Normalmente, você precisa selecionar a opção "Mostrar arquivos ocultos" nas configurações do seu sistema operacional. Ou você pode usar o comando para listar todos os arquivos na linha de comando. ls-a

Pode haver vários arquivos semelhantes no servidor e cada arquivo sempre funciona recursivamente. Isso significa que cada arquivo afetará o diretório em que está, bem como todos os arquivos e subdiretórios.

  1. Para criar este arquivo, basta usar qualquer editor de texto disponível (por exemplo, bloco de notas).
  2. Nome (.htaccess) - sem aspas e outras coisas.
  3. Salvamos o arquivo.
  4. Em seguida, transferimos para o seu servidor (hospedagem) usando um cliente FTP, necessariamente no diretório raiz do site. Você deve transmitir no modo ASCII. Por padrão, a maioria dos clientes FTP transfere dados usando um modo que é ineficiente para transferir arquivos ponto. Seu cliente FTP deve ser capaz de definir o modo de transferência. BINÁRIO
  5. Então você pode editá-lo como quiser, mas certifique-se de atualizar a versão do arquivo no servidor (hospedagem). Se por algum motivo parecer que as regras não entraram em vigor, pode ser devido a permissões de arquivo incorretas. As permissões do arquivo .htaccess devem ser definidas como 755. Seu cliente FTP deve ter uma opção "Permissões de arquivo". Além disso, você pode executar o comando no terminal .chmod 755 .htaccess (é melhor especificar o endereço completo antes do arquivo).

Um exemplo simples de redirecionamento de página

Uma das principais regras populares em .htaccess é o redirecionamento de página. Você pode rotear de qualquer caminho relativo em seu diretor de site. Você também pode redirecionar a página para um caminho absoluto em seu site ou para qualquer outro local na Internet. A sintaxe básica a ser usada em seu arquivo é:

Redirecionar /directory_to_redirect_from/ https://mysite.com/new_directory/index.html

Você sempre deve usar um caminho relativo como o diretório de origem. O caminho absoluto deve ser o diretório para o qual redirecionar.

Um exemplo de criação de um documento de erro em .htaccess

A criação de páginas de erro personalizadas é muito útil, pois permite que você mostre aos visitantes do seu site uma mensagem de erro amigável, por exemplo, se um URL no seu site não funcionar. Isso evita o erro desagradável "404 Arquivo não encontrado" e permite que você exiba um erro amigável, explicando possíveis soluções e orientando o visitante de volta ao conteúdo do site, em vez de deixá-lo frustrado e perdido.

Para configurar documentos de erro personalizados, crie um arquivo .htaccess seguindo as instruções e diretrizes básicas, que incluem o seguinte texto:

ErrorDocument 404 /error_pages/404.html

A linha acima diz ao servidor web Apache para renderizar o documento localizado em /error_pages/404.html (sob seu nome de domínio/endereço do site) sempre que ocorrer um erro 404 (arquivo não encontrado).

Neste exemplo, presumimos que você criou um documento de erro e o nomeou "404.html" e o colocou em um diretório chamado "error_pages" sob o nome de seu domínio. Por exemplo, http://www.yourdomain.com/error_pages/404.html.

O documento 404.html é um documento HTML normal como outros em seu site e pode exibir qualquer conteúdo que você desejar, no entanto, recomendamos que você inclua uma mensagem "Arquivo não encontrado".

Para configurar documentos de erro adicionais, como mensagens de erro 401 Unauthorized, 403 Forbidden e 500 Internal Server, crie um arquivo htaccess (ponto) seguindo as instruções e diretrizes básicas, que incluem o seguinte texto:

ErrorDocument 401 /error_pages/401.html
ErrorDocument 404 /error_pages/404.html
ErrorDocument 500 /error_pages/500.html

Exemplo de proteção por senha em .htaccess

A proteção por senha e os sistemas de autenticação oferecidos pelo servidor web Apache são provavelmente o uso mais importante dos arquivos .htaccess. Com muita facilidade, podemos proteger com senha um diretório (ou vários) de um site que requer um nome de usuário e senha para acessar. O procedimento de login para esses diretórios seguros é feito automaticamente pelo navegador da web usando uma interface pop-up de login (você provavelmente já viu isso antes). As senhas também são criptografadas usando um dos melhores métodos de criptografia disponíveis, o que mantém suas credenciais de login seguras.

Primeiro, decida qual diretório você deseja proteger com senha (observe que todos os arquivos e subdiretórios no diretório serão protegidos por senha) e, em seguida, crie um arquivo .htaccess seguindo as instruções e diretrizes básicas, que incluem o seguinte texto:

AuthName “Nome da Área do Membro”
AuthUserFile /caminho/para/senha/arquivo/.htpasswd
AuthType Básico
Exigir usuário válido

A primeira linha informa ao servidor web Apache que o diretório seguro é denominado "User Zone Name", que será exibido quando o prompt de login aparecer. A segunda linha especifica a localização do arquivo de senha. A terceira linha indica o tipo de autenticação, neste exemplo estamos usando "Basic" porque estamos usando autenticação básica HTTP, e finalmente a quarta linha indica que exigimos credenciais de login válidas, esta linha também pode ser usada para especificar um nome de usuário específico , como "exigir nome de usuário nome de usuário" exigirá o nome de usuário "nome de usuário".

Você usaria isso se estivesse protegendo com senha a área de administração em vez de configurar um diretório público protegido por senha.

A localização do arquivo de senha pode estar em qualquer lugar em seu servidor web, "/location/of/password/file/" deve ser substituído pelo caminho completo/absoluto para o diretório que contém o arquivo de senha e o arquivo ".htpasswd". deveria existir, mas você pode chamá-lo como quiser.

Usamos o nome de arquivo ".htpasswd" porque o servidor reconhecerá o nome do arquivo e o ocultará dos visitantes. Observe que alguns servidores exigem que o arquivo de senha esteja no mesmo diretório que o arquivo .htaccess. Também é importante usar o caminho completo/absoluto do servidor para a localização do arquivo de senha, um caminho relativo ou qualquer variação da URL não funcionará.

O arquivo de senha conterá algo semelhante ao seguinte texto:

nome de usuário: senha criptografada
fred_smith:oCF9Pam/MXJg2

Agora você não pode simplesmente criar uma senha, em servidores Unix/Linux eles devem ser criptografados pelo servidor, em servidores Windows você apenas usa uma senha de texto simples, pois o Windows não oferece nenhum método de criptografia. Você pode ter qualquer número de entradas de usuário no arquivo de senha, uma conta por linha, separando o nome de usuário e a senha com dois pontos. Se você não tiver acesso ao servidor, peça ao provedor de serviços para habilitar esse recurso. Por favor, o painel de controle tem esse recurso embutido.

Como bloquear visitantes por endereço IP

As ferramentas de bloqueio de visitantes oferecidas pelo servidor web Apache nos permitem negar o acesso a determinados visitantes ou permitir o acesso a determinados visitantes. Isso é extremamente útil para bloquear visitantes indesejados ou para permitir que o proprietário do site acesse apenas determinadas seções do site, como a área de administração.

Para configurar restrições e bloqueio de visitantes, crie um arquivo .htaccess seguindo as instruções e diretrizes básicas, que incluem o seguinte texto:

order allow,deny
negar de 255.0.0.0
negar de 123.45.6.
allow from all

As linhas acima informam ao servidor web Apache para bloquear visitantes dos endereços IP "255.0.0.0" e "123.45.6.", observe que o segundo endereço IP está sem o quarto conjunto de números, isso significa qualquer endereço IP que corresponda ao primeiro. três conjuntos de números serão bloqueados, por exemplo, "123.45.6.10" e "123.45.6.255".

Para configurar o bloqueio de todos os visitantes, exceto você, crie um arquivo .htaccess seguindo as instruções e diretrizes básicas, que incluem o seguinte texto:

order allow,deny
permitir de 255.0.0.0
deny from all

As linhas acima dizem ao servidor Apache para bloquear todos os visitantes, exceto aqueles com o endereço IP "255.0.0.0", que você deve substituir pelo seu próprio endereço IP.

Você pode adicionar qualquer número de entradas "negar de" e "permitir de" após "ordem permitir, negar". Observe a mudança de "permitir de todos" para "negar de todos" na linha de fundo, isso é importante e deve ser alterado dependendo de seus requisitos. Se você quiser permitir o acesso de seus visitantes, você deve usar "permitir de todos" e colocar as linhas "negar de" acima.

Os visitantes bloqueados verão a mensagem de erro "403 Proibido".

Um exemplo de configuração de um arquivo .htaccess.

Regras de exemplo contidas no meu arquivo .htaccess

# AMPFORWPLBROWSERCSTART Cache do navegador - hash de amp no lado do navegador.

IfModule mod_expires.c deve ser colocado entre colchetes “<>”
Expira Ativo em
AddType application/vnd.ms-fontobject .eot
AddType application/x-font-ttf .ttf
AddType application/x-font-opentype .otf
AddType application/x-font-woff .woff
AddType image/svg+xml .svg
ExpiresByType application/vnd.ms-fontobject "acesso 1 ano"
ExpiresByType application/x-font-ttf “acesso 1 ano”
ExpiresByType application/x-font-opentype "acesso 1 ano"
ExpiresByType application/x-font-woff “acesso 1 ano”
ExpiresByType image/svg+xml “acesso 1 ano”
ExpiresByType image/webp "acesso 1 ano"
ExpiresByType image/gif “acesso 1 ano”
ExpiresByType image/jpg “acesso 1 ano”
ExpiresByType image/jpeg “acesso 1 ano”
ExpiresByType image/png “acesso 1 ano”
ExpiresByType image/x-icon “acesso 1 ano”
ExpiresByType text/css "acesso 3 meses"
ExpiresByType text/javascript “acesso 3 meses”
ExpiresByType application/javascript “acesso 3 meses”
ExpiresByType application/x-javascript “acesso 3 meses”
ExpiresByType application/xhtml-xml “acesso 3 meses”
ExpiresByType application/pdf “acesso 3 meses”
ExpiresByType application/x-shockwave-flash “acesso 3 meses”
/IfModule deve ser colocado entre colchetes “<>”

# BEGIN GZIP COMPRESSION - compressão gzip

IfModule mod_gzip. certifique-se de colocar entre colchetes “<>”
mod_gzip_on Sim
mod_gzip_dechunk Sim
arquivo mod_gzip_item_include \.(html?|txt|css|js|php|pl)$
manipulador mod_gzip_item_include ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
/IfModule deve ser colocado entre colchetes “<>”

# Remova bugs do navegador (necessário apenas para navegadores realmente antigos)

BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Cabeçalho anexar agente de usuário variável
IfModule mod_deflate.c deve ser colocado entre colchetes “<>”

# Comprime HTML, CSS, JavaScript, Texto, XML e fontes

AddOutputFilterByType DEFLATE aplicativo/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE aplicativo/xml
AddOutputFilterByType DEFLATE fonte/opentype
AddOutputFilterByType DEFLATE fonte/otf
AddOutputFilterByType DEFLATE fonte/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE texto/javascript
AddOutputFilterByType DEFLATE texto/simples
AddOutputFilterByType DEFLATE text/xml
/IfModule deve ser colocado entre colchetes “<>”

# Impede que os cabeçalhos HTTP Vary sejam retornados aos navegadores da família MSIE


BrowserMatch “MSIE” força sem variação
BrowserMatch "Mozilla/4.[0-9]{2}" force-no-variable
/IfModule deve ser colocado entre colchetes “<>”

# Ocultar assinatura do servidor

Assinatura do Servidor Desativada

# Desativa bots esquerdos

SetEnvIfNoCase User-Agent “^Missigua Locator” bad_bot
#SetEnvIfNoCase User-Agent “^PEAR HTTP_Request class” bad_bot
SetEnvIfNoCase User-Agent “^Java/1.4.1” bad_bot
SetEnvIfNoCase User-Agent “^Java/1.5.0” bad_bot
SetEnvIfNoCase User-Agent "^psycheclone" bad_bot
SetEnvIfNoCase User-Agent “^WEP Search 00” bad_bot
SetEnvIfNoCase User-Agent “^FlashGet” bad_bot
SetEnvIfNoCase User-Agent “^GetRight” bad_bot
Agente de usuário SetEnvIfNoCase “^GetWeb!” bad_bot
SetEnvIfNoCase User-Agent “^Go!Zilla” bad_bot
SetEnvIfNoCase User-Agent “^httplib” bad_bot
SetEnvIfNoCase User-Agent “^Indy Library” bad_bot
SetEnvIfNoCase User-Agent "^InfoNaviRobot" bad_bot
SetEnvIfNoCase User-Agent “^InterGET” bad_bot
SetEnvIfNoCase User-Agent “^Internet Ninja” bad_bot
SetEnvIfNoCase User-Agent “^LexiBot” bad_bot
SetEnvIfNoCase User-Agent “^libWeb/clsHTTP” bad_bot
SetEnvIfNoCase User-Agent “^libwww” bad_bot
SetEnvIfNoCase User-Agent “^libwww-perl” bad_bot
Agente de usuário SetEnvIfNoCase “^LinkextractorPro” bad_bot
SetEnvIfNoCase User-Agent “^Mozilla.*NEWT” bad_bot
SetEnvIfNoCase User-Agent "^Octopus" bad_bot
SetEnvIfNoCase User-Agent “^ProWebWalker” bad_bot
SetEnvIfNoCase User-Agent “^SuperBot” bad_bot
SetEnvIfNoCase User-Agent “^WebAuto” bad_bot
SetEnvIfNoCase User-Agent “^Wells Search II” bad_bot
SetEnvIfNoCase User-Agent “^Wget” bad_bot
SetEnvIfNoCase User-Agent “^wget” bad_bot

Eu dei um mínimo de regras que estão contidas no meu arquivo.

Recursos de personalização de arquivo .htaccess e erros comuns

É isso mesmo, esse arquivo geralmente causa um erro banal do servidor 500 Internal Server Error. Você deve editar o arquivo com muito cuidado e seguir as seguintes regras:

  • Sempre salve uma cópia de trabalho do arquivo .htaccess antes de editar.
  • Nunca introduza novas regras em um site de produção sem primeiro revisar o arquivo.
  • A codificação é geralmente UTF-8.
  • Cada regra deve ser escrita em uma nova linha.
  • Essas instruções que não são processadas pelo servidor Apache são excluídas - elas imediatamente causam um erro no servidor.
  • Você não pode escrever várias instruções em uma linha - você receberá um erro 500.
  • Tenha cuidado - um espaço ou caractere extra pode levar a um erro.

Que efeito o arquivo .htaccess tem no site

Como regra, graças a este arquivo, você pode perfeitamente otimizar o site para os motores de busca. Aqui está o que ele pode fazer:

  1. Configurando um redirecionamento 301 no site (a regra mais comum). Pode ser usado para as tarefas necessárias.
  2. Configurações de hash do site no lado do servidor.
  3. Ativando a compactação gzip (abreviação de GNU Zip) - compactação de arquivo no lado do servidor.
  4. Garanta a proteção do site: bloqueio de endereços IP, banimentos, etc.
  5. Especifique a quantidade necessária de memória alocada para o site.

Esta é a funcionalidade mínima disponível para este arquivo. O principal é seguir todas essas recomendações corretamente. Nos próximos artigos, tentarei descrever algumas regras para este arquivo, e também saberemos o que é arquivo robots.txt e como adicionar mapa do site aos motores de busca.

Obrigado por ler Nicola Top

Quão útil é o post?

Clique no smiley para avaliar!

classificação média 5 / 5. Número de avaliações: 29

Não há avaliações ainda. Avalie primeiro.

Você pode gostar...

1 Resposta

  1. Илья diz:

    Opa obrigado pela informação. Pelo menos você pode olhar para exemplos ao vivo. A animação gradiente é simplesmente super))) Excelente aplicação - provavelmente sofreu por muito tempo.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

8 − 2 =