Eu acho que seu arquivo .htaccess está no formato DOS
e ele precisa estar no formato Unix
.
Eu criei um diretório de teste chamado "reescrever" e coloquei um arquivo .htaccess
dentro de uma regra de reescrita.
Quando vou para esse URL através do meu navegador, recebo um 500 Internal Server Error.
Então eu pensei que era minha sintaxe de reescrita e tentei algumas mudanças, a mesma coisa. Então eu comentei tudo com # em cada linha. Mesma coisa.
Então notei que o diretório não aparece em seu diretório pai (que não possui arquivo de índice).
Então, tentei alterar o nome do arquivo para .htaccess_bad
e o diretório é exibido.
Então eu mudei de volta para .htaccess e esvaziei o arquivo, então é um arquivo em branco. O diretório ainda aparece.
Por fim, adicionei um único # ao arquivo .htaccess e viola, o diretório desaparece novamente.
O problema é que o diretório pai tem um arquivo .htaccess com um sinalizador [R] em sua regra de reescrita, mas a remoção não corrigiu o problema.
Qualquer ajuda sobre o que tentar em seguida ou por que isso está acontecendo?
Mesmo com uma quebra de linha está causando problemas. (então tem que ser realmente vazio, parece).
O Notepad ++ é legal. Tente isto:
Editar - > Conversão EOL - > Converter para o formato UNIX
Não salve o .htaccess na codificação UTF-8 e converta-o em um ansi regular. No meu caso, o servidor não gosta dessa coisa da BOM no início do arquivo.
Bem, eu nunca tive esse problema antes, mas ...
Quando abri o Putty e editei o lado do servidor do arquivo .htaccess, funcionou.
Isso é um ponto para o Notepad ++.
Tags .htaccess apache-2.2 500-error