Estou usando o nginx para servidor de arquivos estáticos. Isso funciona conforme o esperado, mas agora estou tentando acessar arquivos montados no sistema de arquivos.
Então baixei um arquivo zip e usei ratarmount
para montar o arquivo zip no sistema de arquivos. Mas ao tentar acessar os arquivos recebo um erro 404 e ao verificar o error.log vejo isto:
2024/04/27 08:22:47 [crit] 111404#111404: *27 stat() "/var/www/html/forbes/rll/test.json" failed (13: Permission denied), client: 10.3.33.1, server: _, request: "HEAD /forbes/rll/test.json HTTP/1.1", host: "10.3.33.1"
Estas são as permissões para o diretório
ubuntu@myserver:~/www/html/forbes/rll$ ll
total 1630
dr-xr-xr-x 1 root root 0 Apr 19 13:41 ./
drwxrwxrwx 1 ubuntu ubuntu 0 Apr 27 08:30 ../
-r-xr-xr-x 1 root root 1665541 Apr 19 13:21 test.json*
Alguém tem uma ideia se você não pode usar o nginx em arquivos montados no sistema de arquivos? Ou se devo mudar alguma coisa para que funcione.
Tudo que você precisa fazer é uma das seguintes opções:
Alterar propriedade : Executar
sudo chown -R www-data:www-data /var/www/html/forbes/rll/
(assumindo que o Nginx seja executado comowww-data
usuário e grupo). Isso alterará recursivamente a propriedade do diretório e seu conteúdo para o usuário Nginx.OU
Alterar permissões : execute
sudo chmod -R 755 /var/www/html/forbes/rll/
para conceder permissões de leitura e execução ao usuário Nginx.Após fazer essas alterações, recarregue o Nginx para aplicar as atualizações:
sudo service nginx reload
.Acabei de perceber depois de conversar com o questionador:
Você pode atualizar a configuração do Nginx : Adicione a
user
diretiva em seu arquivo de configuração do Nginx (geralmentenginx.conf
) para executar o Nginx como oubuntu
usuário, que possui as permissões apropriadas:user ubuntu;
Visto que minha resposta anterior não funcionou, isso pode!