Falha na reinicialização do Apache, pois não é possível localizar um arquivo que esteja presente

0

Eu configurei um dos arquivos de configuração de instância da web com o snippet abaixo para permitir que redirecionamentos trabalhem através de outro arquivo sem a necessidade de reiniciar o servidor.

RewriteMap redirects txt:/mnt/var/www/html/abc/content/abc/na/ac/config_en_us/redirects/redirects.txt
RewriteCond %{REQUEST_URI} ^(.*)$
RewriteCond ${redirects:%1} >""
RewriteRule ^(.*)$ ${redirects:%1} [R=301,NC,L]

Ao tentar reiniciar o httpd depois de colocar o snippet de código, não consigo iniciar o apache. O mesmo código está trabalhando em outros servidores. Também o arquivo foi criado e eu validei a permissão.

abaixo é a declaração de erro

Syntax error on line 69 of /etc/httpd/conf.d/abc.conf: RewriteMap: file for map redirects not found:/mnt/var/www/html/abc/content/abc/na/ac/config_en_us/redirects/redirects.txt

Eu finalmente consegui trazer o servidor, mas a correção não estava correta. Aqui está o que eu fiz.

Eu criei o mesmo arquivo com o mesmo nome no caminho /etc/httpd/conf.d e o movi para o caminho desejado, depois do qual o apache conseguiu localizar o arquivo e apareceu. Alguém pode me ajudar a entender o que aconteceu?

    
por user1643087 08.05.2017 / 21:58

1 resposta

1

Só para ser definitivo, esta resposta é por comentário da Fox:

"the file itself needs read permission for the user Apache runs as, and every directory on the path to that file needs both read and execute permissions"

Exemplo. No CentOS, eu tinha o arquivo em /etc/http/conf/ e os caminhos não estavam configurados como acima. Eu mudei para /var/www/ (que anteriormente tinha sido configurado corretamente) e então funcionou.

    
por 10.02.2018 / 21:52