
Eu tenho o umask configurado no meu servidor Apache2 usando umask 002
. Isso é adicionado ao final /etc/apache2/envvars
durante a construção do contêiner do docker.
Tenho o seguinte script para testar:
// Create file
if ($fp = fopen(time() . '.txt', 'w')) {
fwrite($fp, 'This is a simple test.');
fclose($fp);
echo "done";
} else {
echo "error - cannot create file";
}
// Generate error
error_log("This be an error", 0);
Isso cria 2 arquivos: error_log_dev
(conforme definido no meu php.ini) e 1520215096.txt
. As permissões para cada um desses arquivos são as seguintes:
-rw-rw-r-- 1 www-data www-data 22 Mar 5 11:58 1520215096.txt
-rw-r--r-- 1 www-data www-data 55 Mar 5 11:58 error_log_dev
Por que o log de erros não obedeceria ao umask, mas fopen()
obedece?