Недавно переехал сервер и пытаюсь все настроить. Мой класс memcache записывает журналы, что мне нужно для разработки.
редактировать: сервер под управлением Ubuntu 12.04.
веб-корень /var/www/public_html
файл журнала находится в /var/www/logs/
Вот права доступа к каталогу
-rw-r--r-- 1 root root 1415 Sep 6 11:53 default
drwxrwxr-x 2 root webmasters 4096 Sep 6 12:48 logs
drwxrwxr-x 8 root webmasters 4096 Sep 6 12:32 public_html
Вот разрешения из /var/www/logs
-rw-rw-r-- 1 root webmasters 116103 Sep 6 13:02 access.log
-rw-rw-r-- 1 root webmasters 16094 Sep 6 12:48 error.log
-rw-rw-r-- 1 root webmasters 0 Sep 6 12:48 memcache.log
-rw-rw-r-- 1 root webmasters 9861 Sep 6 13:02 php_log.log
Файл, для которого используется браузер, — это /var/www/public_html/index.php.
-rw-rw-r-- 1 root webmasters 5660 Sep 6 01:51 /var/www/public_html/index.php
Индекс включает /var/www/public_html/includes/cache.php
-rw-rw-r-- 1 root webmasters 4602 Sep 6 12:47 /var/www/public_html/includes/cache.php
Участники группы:
grep 'webmasters' /etc/group
webmasters:x:1002:sftp_chris,www-data
Я даже пытался изменить /logs и /memcache.log на chmod 777.
Не совсем понимаю, почему это происходит, поскольку вы можете видеть, что php без проблем записывает свой файл журнала в /logs/php.log.
Есть идеи? Я абсолютно сбит с толку.
Я думал, может быть, это как-то связано с php-suhosin, но ничего там не нашел.
функция:
function write_to_log($string){
$file = '/var/www/memcache.log';
$fh = fopen($file, 'a');
$contents = @fread($fh, filesize($file));
$stringData = $contents."[".date('H.i:s d-m-y')."] ".$string;
fwrite($fh, $stringData);
fclose($fh);
}
/var/www/public_html/
, но вы пытаетесь записать в/var/www/
. - person zysoft   schedule 06.09.2012/var/www/logs
, а не/var/www/public_html
. - person Michael Krelin - hacker   schedule 06.09.2012the log file is in /var/www/public_html
. Возможно, вопрос следует отредактировать. Это немного сбивает с толку, но не отличается. Путь все равно неверный :) - person zysoft   schedule 06.09.2012