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