404 ao servir arquivos estáticos de propriedade de outro usuário de /opt

404 ao servir arquivos estáticos de propriedade de outro usuário de /opt

SO = Debian 11

Eu editei o padrãonginx(versão 1.18.0, instalado a partir do repositório Debian) configuração conforme abaixo:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;

    index index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
            try_files $uri $uri/ =404;
    }

    location /torrent/ {
            autoindex on;
            alias /opt/docker/qbittorrent/downloads;
    }
}

para servir meus arquivos baixados comqbittorentcontêiner docker no protocolo HTTP. No entanto, recebo um404 não encontradoerro quando visito /torrent/ou /torrent/some_folder/some_name.some_extension.

Se for importante, eles têm rw-r--r--permissão e são de propriedade, docker_qbit:dockerembora o servidor web seja instalado por umsudoer.

Responder1

O que está acontecendo é que o usuário NGINX não tem permissão para percorrer o diretório especificado em seu alias.

Seus requisitos indicam que não podemos alterar as permissões no diretório de destino.

A única solução que vejo seria adicionar o nginxusuário principal (www-data) ao dockergrupo. Dessa forma, o servidor web deverá poder acessar o diretório especificado sem alterar sua permissão.

Se o usuário nginx padrão no Debian 11 for www-data.

Supondo que seja esse o caso, o comando para fazer isso ficaria assim:

usermod -a -G docker www-data

Esse comando modificará o usuário “www-data” adicionando-o ao grupo “docker”.

Para ter certeza de qual usuário está executando o nginx, você pode observar a saída deste comando:

ps -eo user,comm | grep nginx

Depois de concluído, você pode recarregar o nginx e ver se o conteúdo já está disponível.

systemctl reload nginx

Responder2

Obrigado a todos. O problema foi omitido logo /após o endereço na aliasdiretiva.

informação relacionada