acesso de gravação nginx fastcgi_cache_path para outros usuários

acesso de gravação nginx fastcgi_cache_path para outros usuários

Estou usando um servidor web nginx com cache fastcgi. O fastcgi_cache_path é definido como um subdiretório do webroot de cada host virtual do nginx. (por exemplo, /var/html/user01/httpdocs/nginx_cache ... /var/html/user02/httpdocs/nginx_cache.

O cache em si funciona bem, como posso ver nos cabeçalhos de resposta (x-cache hit) e nos dados salvos nos diretórios nginx_cache.

Então, quando olho para os diretórios nginx_cache, vejo que o proprietário é sempre nginx. O que eu queria fazer é definir permanentemente as permissões (leitura/exclusão) para os usuários (user01, user02, ...) para sua pasta nginx_cache.

O que eu já tentei: - alterar recursivamente todos os direitos para user0x (será substituído pelo nginx para alterações e novos arquivos) - procurar uma configuração nginx (encontrei apenas nginx_store_access que também não funciona)

Como posso resolver esse problema?

Responder1

Primeiro, você não deve armazenar a pasta de cache na raiz da web /var/www/html/user01/httpdocs, pois assim você estará tornando o conteúdo do cache público para todos os visitantes da web. Mova-o para /var/www/html/user01o nível, então o conteúdo não estará acessível.

No que diz respeito às permissões de arquivo, você pode tentar aplicar uma ACL ao diretório de cache como o seguinte:

setfacl -d -m u:user01:rw ngx_cache

Isso atribui uma ACL ao ngx_cachediretório que torna todos os arquivos dentro do diretório de cache legíveis e graváveis ​​por user01.

informação relacionada