Resultados 1 a 2 de 2
  1. #1
    Louco pelo WHT Brasil
    Data de Ingresso
    Nov 2010
    Localização
    Brasil, São paulo
    Posts
    109

    Desvendando o arquivo .htaccess

    Qual webdesigner que já não se esbarrou no famoso arquivo .htaccess e se perguntou para que serve esse arquivo? Na Dúvida, melhor não mexer. Para que você não passe por isso novamente, vamos desvendar todos os segredos desse arquivo.

    Antes de continuarmos, vamos definir o que é o arquivo .htaccess:
    O .htaccess é um arquivo que fica no servidor web e serve para configurar o tipo de acesso a esse servidor. Com ele, pode-se controlar diversos parâmetros como: acesso restrito (com ou sem uso de senha), páginas de erro padrão, página padrão de acesso ao site, acesso com e sem o “www”, redirecionar diretivas, entre outros. O uso correto do arquivo .htaccess provê grande auxilio no SEO do site.

    Nota: Ao colocar um arquivo .htaccess na pasta raiz de um site, ele atuará sobre todas as pastas deste. Mas, um arquivo .htaccess uma subpasta anula a ação do anterior passando a agir sobre essa pasta e suas subpastas.

    Exemplo de um arquivo .htaccess comentado:

    // ——- Autenticação com senha ativado ———–//
    deny from all
    AuthUserFile /site/.htpasswd
    AuthGroupFile /dev/null
    AuthName “Please enter your ID and password”
    AuthType Basic
    require valid-user
    //——- páginas de erro padrão ———–//
    ErrorDocument 400 erro400.html
    ErrorDocument 401 erro401.html
    … xxx erroXXX.html
    ErrorDocument 504 erro504.html
    ErrorDocument 505 erro505.html
    RewriteEngine on
    //———– Evitando Conteúdo duplicado ———–//
    RewriteCond %{HTTP_HOST} ^(mundoseo\.com\.br)(:80)? [NC]
    RewriteRule ^(.*) http://www.mundoseo.com.br/$1 [R=301,L]
    //———– Página Padrão ———–//
    DirectoryIndex páginadefault.html
    //———– Redirecionamento Permanente ———–//
    Redirect permanent www.movapermanentedaqui.com www.movidopermanenteparaca.com
    //———– Redirecionamento Temporário ———–//
    Redirect temp www.movatemporariodaqui.com www.movidoparacatemporario.com
    order deny,allow
    //——— Páginas permitidas ————-//
    allow from www.endereçopermitido.com.br
    //——— Páginas Bloqueadas ————-//
    deny from www.endereçonegado.com.br


    Vamos às requisições do código:

    Nota: Mantenha o seu arquivo .htaccess sempre organizado e não coloque instruções desnecessárias para não pesar o arquivo, pois o servidor o processa sempre que há uma requisição.

    Comentários: para inserir um comentário utilize um # antes do conteúdo da linha.

    Não listar o conteúdo de um diretório:

    Quando se tenta acessar um diretório, em ausência de um arquivo de índice, o Apache mostra por defaut o conteúdo do diretório. Se quisermos impedir a visualização desse conteúdo bastaria criar um arquivo de índice, por exemplo index.html, mas existe uma solução mais elegante mediante a diretiva Options. Basta inserir o comando:

    Options -Indexes

    Página padrão:

    Também poderíamos utilizar a diretiva DirectoryIndex, que especifica que arquivos atuam como índice por defeito, e que arquivo mostrar no caso de que estes não se encontrem. Por exemplo a linha:

    DirectoryIndex index.php index.html index.htm /proibido.php

    Isto indicaria ao servidor que deve buscar os arquivos index.php, index.html ou index.htm, nessa ordem, e no caso de não encontrar nenhum deles, carregar o arquivo proibido.php.

    Página de erro (exemplo erro 404):

    Primeiramente, crie o layout da página de erro. Depois, inclua o código.
    ErrorDocument 404 http://www.meusite.com/404.html

    Você pode especificar qualquer arquivo que desejar para a personalização do erro e o que deve ser feito para implementá-lo é somente adicionar uma linha de comando pra cada erro ao .htaccess com o seguinte formato:

    ErrorDocument 404 erro404.html ou ErrorDocument 404 arq_inexist.htm
    ErrorDocument 403 erro403.html ou ErrorDocument 403 proibido.htm
    ErrorDocument 500 erro500.php ou ErrorDocument 500 erro_interno.asp

    Escondendo a extensão da linguagem de script:Pode-se aumentar a segurança mudando a extensão dos scripts para que os visitantes desconheçam que linguagem está utilizando.# Make PHP code look like unknown typesAddType application/x-httpd-php .cool, desta forma, os arquivos .cool serão tratados como se fossem arquivos PHP. Deve-se renomear os arquivos PHP para a nova extensão.

    Bloquear acesso ao site por IP:

    Sempre existem os malas que ficam vasculhando o seu site a procura de falhas pra entrar, causar problemas e pichar. É só bloqueá-lo adicionando uma linha de comando com o seguinte formato:

    order allow,deny
    deny from 012.34.5.6
    deny from 012.34.5.
    allow from all

    A primeira linha bloqueia e não permite que o IP de endereço 012.345.5.6 acesse o site. A segunda linha bloqueia o acesso para o bloco de 012.34.5.1 até 012.34.5.255. A terceira linha permite a todos os outros acessarem o site.

    Se você quer somente visitantes do Brasil você poderia configurá-lo assim:

    order allow,deny
    deny from all
    allow from 200.
    alow from 201.

    Quer bloquear os usuários de um determinado provedor/servidor e não sabe o range de IP, sem problemas:

    order allow,deny
    deny from .veloxzone.com.br
    allow from all

    Redirecionamento:

    As formas de redirecionar páginas são diversas : javascript, PHP, HTML(http-equiv),etc. Não é diferente com o .htaccess, e bem simples também:

    Redirect /dirantigo/pagina_velha.html http://www.seusite.com/dirnovo/pagina_nova.html

    As 3 partes que compõem esta diretiva são separadas por espaço e note que o comando é composto de 3 partes que precisam estar numa mesma linha: a primeira é o comando Redirect seguido da localização do arquivo/diretório que você quer redirecionar, relativa ao diretório principal do seu site, e a terceira é o endereço completo do novo arquivo para o qual deve ser redirecionado. Há ainda a possibilidade de se redirecionar todo um diretório :

    Redirect /dirantigo/ http://www.seusite.com/dirnovo/

    As aplicações são várias, desde repor a informação de um arquivo que você mudou de diretório ou/e de nome até ao redirecionamento de um usuário que requisitou a visualização de um diretório não permitido, por exemplo o de imagens.

    Prevenindo-se contra “hot-linking”:

    “Hot Linking” são links que apontam diretamente pra arquivos não HTML e roubam/decrescem a sua banda contratada. E também possível evitar isso com o .htaccess, mas antes verifique com o seu servidor se ele permite mod-rewrite. Segue abaixo o código:

    RewriteCond %{HTTP_REFERER} !^http://seusite.com.br/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.seusite.com.br/.*$ [NC]
    RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ – [F,NC]

    O código acima apresenta um link quebrado para a imagem, mas se desejar mostrar sua logo ou coisa parecida, use:

    RewriteCond %{HTTP_REFERER} !^http://seusite.com.br/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.seusite.com.br/.*$ [NC]
    RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ http://www.seusite.com/sua_logo.gif [R,L]

    Impedindo a listagem de diretórios:

    Existe sempre aquela situação de ter um diretório cheio de arquivos que não desejamos que sejam listados. Existem duas possibilidades pra se fazer isso: a primeira é criar um arquivo index.html vazio e colocar no diretório e a outra com o .htaccess: IndexIgnore *Se este comando estiver no arquivo .htaccess do diretório principal, a listagem de todos os diretórios estarão desabilitadas. Mas você pode também especificar o tipo de arquivo que você não quer que seja listado:

    IndexIgnore *.wmv *.jpg *.gif *.swf

    Proibe a visualização do arquivo .htaccess:

    order allow,deny
    deny from all

    Caso nao tiver o arquivo .htaccess baixe ele no seguinte link: http://webinhost.com.br/Downloads/htacces.zip

    Dica: Um excelente site para ediçao do .htaccess e o site: [pt] Fácil para criar arquivos .htaccess com "Editor .htaccess" é em portugues e facil de interargir.

    Fonte: Desvendando o arquivo .htaccess | WebinBlog
    Webin Serviços de internet Ltda.
    Revendas de Hospedagem (USA e BR) com CloudLinux, WHMCS grátis, Construtor de sites, Softaculous, NGINX, DNS personalizados, CLUSTER de DNS.
    webinhost.com.br www.webinrevenda.com.br / www.webinidc.com.br

  2. #2
    Quero ser Guru
    Data de Ingresso
    Oct 2010
    Posts
    88
    @Marco Antonio

    muito legal esta seu artigo, obrigado!

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •