我在我的Apache2服务器上设置了002
的umask。这在docker容器构建期间添加到/etc/apache2/envvars
的末尾。
我有以下脚本要测试:
// 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);
这将创建2个文件:error_log_dev
(在我的php.ini中设置)和1520215096.txt
。每个文件的权限如下:
-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
为什么错误日志不会被umask遵守,fopen()
呢?