Assine o BrPoint por SMS! Envie "Assinar BRPOINT" para o número 49523
Powered by MaxBlogPress 

Cuidado ao modificar o .htaccess

O .htaccess é um arquivo tão poderoso quanto perigoso.

Já escrevi vários tutoriais utilizando-o, mas a principal dica para a edição do .htaccess é: cuidado.

Hoje, verificando as informações na Central do Webmaster, do Google.

Achei um dado estranho, 234 URLs no Diversos, estavam retornando erro 404 (não encontrado).

Como estou tomando o cuidado de remover as páginas que retornam 404 do índice, fiquei preocupado com um número tão alto, de repente.

A primeira coisa que veio a minha cabeça foi a base de dados corrompida, isso explicaria um número grande de páginas não encontradas, mas seria um problema para voltar ao normal.

Quando listei as URLs com problema, a estrutura delas estava muito similar a estrutura de categorias que eu havia acabado de alterar, porém, ao invés dos nomes das categorias, estavam os nomes das tags, no endereço.

Foi nesse momento que veio o estalo, fiz besteira no .htaccess.

As categorias eram no formato /tags/nome_categoria

Enquanto as tags eram: /tag/nome_tag

A diferença era apenas um s e esse foi justamente meu erro, ao invés de usar a regra:

CODE:
rewriterule ^tags/(.*)$ /assunto/$1 [R=301,L]

Que seria a correta, estava utilizando:

CODE:
rewriterule ^tag/(.*)$ /assunto/$1 [R=301,L]

Um simples "s" faltando, teria causado um caos na indexação do blog, se eu indexasse as categorias há mais tempo.

Como só passei a indexar as categorias, depois que modifiquei a forma de exibição dos textos, o impacto não foi tão grande quanto poderia ser.

Sempre que for modificar o .htacces, duas coisas têm que ser feitas:

  • Backup do arquivo, antes da alteração.
  • Testar se todas as alterações estão funcionando como deveriam.
Compartilhe e Guarde:
  • StumbleUpon
  • ueba
  • Rec6
  • linkk
  • dihitt
  • linkloko
  • websapiens
  • linkto
  • Technorati
  • imera
  • Faves
  • Google
  • MySpace
  • del.icio.us
  • TwitThis

Artigos Relacionados

24 Comentários

  1. comment-top

    Esse arquivo realmente pode ser perigoso n soh no caso de perda de visitantes, por erro na URL como de invasao se for mal construido.

    comment-bottom
  2. comment-top

    A escrita do .htaccess é um mistério para mim. mexo muito pouco no meu.

    comment-bottom
  3. comment-top

    Olá, Bruno. Desculpe-me se pareceu que seu blog não é útil na blogosfera, não foi a intenção. O seu é um blog útil, não o meu, que é apenas uma forma de eu me distrair. Acho que as informações que disponibiliza, embora eu não as tenha procurado, são vitais para os usuários dessas máquinas malucas que tanto prazer nos dão. Também acho justíssimo que você ganhe para trazer essas informações preciosas, e gratuitamente, a todos nós – eu também gostaria de ganhar, mesmo que só para palpitar -, só que o Google Adsense exagera na quantidade, peca na qualidade e os posts acabam se confundindo com elas. O Google paga, mas polui o seu espaço, é como se não se importasse se você tivesse ou não leitores, desde que ele tenha um espaço para se pendurar.
    Eu valorizo o seu trabalho, tenha certeza. E espero que logo inventem uma forma melhor de o blogueiro ganhar dinheiro sem perder a qualidade visual do blog.
    Abraço.

    comment-bottom
  4. comment-top

    Estou com esse problema com 455 páginas e ainda não consegui arrumar e nem faço ideia do que seja.

    comment-bottom
  5. comment-top

    Também estou com algumas URLs não seguidas, segundo a ferramentas para webmasters do Google.

    O detalhe do problema é que o redirecionamento está vazio. Dei uma olhada pra ver o que poderiar estar acontecendo com as URLS e obersevei que se eu colocar barra (/) no final da url, a página carrega numa boa, sem a barra da o tal erro 301.

    Pode me ajudar com isso Bruno, sabe do que se trata?
    Talvez seja interessante colocar a pergunta no SOS WordPress.

    comment-bottom
  6. comment-top

    Bruno, nada a ver com a conversa, mas estou recebendo comentários por email deste post, sendo que não comentei. Por que será? Veja aí, deve ser um bug.

    Abraços.

    comment-bottom
  7. comment-top

    Rodrigo, pode até derrubar um servidor :) .

    Marcus, é uma ferramenta interessante, vale a pena aprender.

    Cláudia, obrigado. Infelizmente, o Adsense, ainda é a única opção, realemte, retável.

    Espero que novas opções surjam em breve.

    Tiago, tente usar a seguinte regra, no início do .htaccess:

    [CODE]ReWriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !..+$
    RewriteCond %{REQUEST_URI} !/$
    RewriteRule (.*) $1/ [R=301,L]
    [/CODE]

    Backup e canja de galinha não fazem mal a ninguém.

    Máio, o WP diz que você assinou para receber aviso de novas respostas, não sei se marcou isso antes ou depois de você comentar.

    Abraços

    comment-bottom
  8. comment-top

    Olá bruno…

    Tenho duas dúvidas relacionada a subdominios…

    Primeira:

    usar subdominios pode ser ruim para SEO? Estou pensando em fazer “assunto.tiagosilva.org”, para evitar além do smartpricing no adsense, uma misturança de conteúdo num mesmo blog (como está acontecendo no meu atualmente, imagina o diversos misturado com o brpoint :/ )

    E a outra questão, se eu redirecionar os subdominios para um outro dominio, pode se tornar ruim nas SEs?

    No mais, acharia interessante, você fazer um SOS para outras questões…

    []s

    comment-bottom
  9. comment-top

    tiagotb, eu testei por um tempo o Diversos como subdomínio do BrPoint e não gostei.

    Para SEO e Adsense, não faz tanta diferença, já que o Google considera cada subdomínio um site diferente.

    Não entendi a segunda pergunta.

    Abraço

    comment-bottom
  10. comment-top

    obrigado pela primeira resposta..

    a segunda questão é a seguinte:

    Eu fiz um blog no subdominio: tech.tiagosilva.org

    Após alguns meses vejo que dá certo, e resolvo mudar para: http://www.tech.org

    é possivel fazer essa mudança mais tarde pelo htaccess (de um subdominio para um dominio) sem perder muita indexação ou ranking no google?

    agradeço desde já pela resposta

    []s

    comment-bottom
  11. comment-top

    Bruno, eu faço essa alteração no .htaccess do diretorio raiz do servidor ou do .htaccess do diretorio do blog?

    comment-bottom
  12. comment-top

    Bruno, fiz as mudanças mas o problema continua.
    O .htaccess no diretorio onde o blog está instalado está dessa maneira:


    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /blog/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /blog/index.php [L]

    # END WordPress

    O erro é o seguinte: Se tirar a barra (/) do final das URLs, as páginas não são exibidas. Com a / tudo fica normal!

    Estou ficando careca pq já tentei coisa pra caramba.

    comment-bottom
  13. comment-top

    tiagotb, alguma coisa você sempre perde, mas dá para transferir a maior parte da indexação.

    Tiago é no diretório do blog.

    Essa regra que você mostrou é a padrão do WP, o código que passei, deve vir antes desse código do WP.

    Abraço

    comment-bottom
  14. comment-top

    Poise Bruno, tentei… e agora ao invés do erro 301 retorna o 500. :(

    Deixa pra lá…

    comment-bottom
  15. comment-top

    Duas dúvidas:

    1 – Qual seria a diferença de usar o “redirect” no lugar do rewrite
    rule?

    2 – Existe alguma forma de especificar erro 404 no RewriteCond? Por exemplo:

    RewriteCond %{} “se for erro 404″
    RewriteCond %{} “se for a pasta X”
    RewriteRule “pasta x para pasta y” {R=301,L}

    Isso é possível?

    comment-bottom
  16. comment-top

    Tiago, você colocou as duas regras ou uma só?

    Tem como me mandar seu .htaccess por e-mail ou colocar no forum?

    Thiago, eu prefiro o rewrite por estar mais acostumado e ser um pouco mais flexível que o redirect, mas fora isso não tem muita diferença.

    De cabeça, não me lembro de nenhuma condição para erro, mas você pode especificar um documento padrão para tratar erros e usar o PHP, por exemplo, para fazer os redirecionamentos.

    Abraços

    comment-bottom
  17. comment-top

    Bruno vou explicar melhor.

    No começo do blog, alterei o formato dos Permalinks de /archives/nome-da-materia para /archives/nome-da-materia.php .

    Até hoje recebo visitas na url antiga, e como ainda não consegui uma solução automatizada, venho redirecionando manualmente com o redirect.

    Com um RewriteCond, pensei em dizer “se estiver acessando a estrutura “/archives/” e retornar o erro 404, adicione “.php” no final da url. Talvez nem seja interessante fazer isso pois pode gerar um loop infinito, mas procurei por essa condição de erro sem sem êxito.

    Estou fugindo de todas as soluções em PHP, até o redirecionamento do feed estou fazendo via .htaccess. Estou anasilando constantemente o uso do processador no meu server, e já diminuí o consumo em 25%.

    Quando você deixa para o WordPress identificar o Erro 404, ele simplesmente devora o CPU para fazê-lo, por isso estou me antecipando via webserver ;) (talvez eu escreva até um artigo sobre isso depois que eu terminar)

    Um abraço!

    comment-bottom
  18. comment-top

    Por que não tenta:

    [CODE]
    ReWriteRule ^/archives/(.*)$ /archives/$1.php
    [/CODE]

    Abraço

    comment-bottom
  19. comment-top

    O código acima não vai funcionar, por causa da nova estrutura, na verdade, você vai ter que usar:

    [CODE]
    ReWriteCond %{REQUEST_URI} !^.php$
    ReWriteRule ^/archives/(.*)$ /archives/$1.php
    [/CODE]

    Acho que isso atende.

    Abraço

    comment-bottom
  20. comment-top

    Bruno, vou colocar no fórum.

    comment-bottom
  21. comment-top

    Ótimo, vou dar uma olhada.

    Abraço

    comment-bottom
  22. comment-top

    [...] atualizei o WordPress, só dava Not Found nos links internos do blog). O Bruno Alves já chegou a escrever sobre o perigo de se mexer manualmente no arquivo. Mas consegui arrumar a [...]

    comment-bottom
  23. comment-top

    Oi,

    Achei o blog por causa de um problema com htaccess que eu tive hj. Ele simplesmente mudou sozinho. Fiz upload do antigo e tudo voltou ao normal. Alterei o chmod do arquivo pra so read, mas queria saber de alguem se isso e normal ou se foi erro do servidor ou pior alguma tentativa de invasao.

    Sabe algo sobre isso?

    Obrigada,
    Claudia

    comment-bottom
  24. comment-top

    Alguém sabe como tirar a extensão pelo .htaccess ?
    Exemplo:
    “www.site.com.br/pagina.html” para “www.site.com.br/pagina”

    comment-bottom

RSS feed para os comentários deste artigo.

Desculpe, mas os comentários para este artigo estão fechados.