Talvez a permissão do grupo seja o problema? Experimente:
chmod 775 /mnt/d5/logs
Desculpe por talvez uma pergunta boba / básica ...
Eu tenho o diretório /var/www/html/logs
. De / var para html owner:group
é root:root
e as permissões são drwxr-xr-x
. Mas o diretório "logs" tem apache:apache
e drwxrwxr--
. Webserver, neste caso, é capaz de gravar logs [na verdade não webserver, mas a função personalizada do php]
Outro caso é /mnt/d5/logs
Tentando escrever lá, sem sucesso. /mnt/d5
tem root:root
permissões com drwxr-xr-x
, hovewer "logs" dir tem apache:apache
com drwxr-xr-x
, o mesmo que o primeiro caso.
Minha pergunta é: por que, no primeiro caso, os direitos intermediários não são tomados no caso? Isso está relacionado ao DocumentRoot da configuração do apache?
Qual é a melhor maneira de resolver a situação atual? Está dando 0777
direitos é o caso certo?
P.S: Centos 6, sem SELinux
=== EDITADO ===
$logDir = Yii::app()->params['phantomDir'] .....;
$pipeTo = $logDir . DIRECTORY_SEPARATOR . 'script.log';
DirectoryHelper::createDirectory($logDir);
exec('phantomjs ..with its params... > ' . $pipeTo);
...
public static function createDirectory($path, $mode = 0777)
{
$oldmask = umask(0);
if(file_exists($path) == false) {
mkdir($path, $mode,true);
}
umask($oldmask);
}
Talvez a permissão do grupo seja o problema? Experimente:
chmod 775 /mnt/d5/logs
Tags permissions apache-2.2 centos6