12

codeigniterがlog_messagesをログに記録しない理由がわからないようです

構成:

$config['log_threshold'] = 4;
$config['log_path'] = '/var/log/mydlp.log';

スクリプト内:

log_message('error','here');

ファイルの場所:

-rw-rw-rw- 1 root  root    0 2012-12-05 13:10 mydlp.log

ログメッセージが表示されても何も表示されません。

これが/varと/var/logのディレクトリ構造です

 drwxr-xr-x  6 root root  4096 2012-12-05 13:10 log
 drwxr-xr-x  14 root root  4096 2012-01-04 14:38 var

私はここで何か間違ったことをしていますか?

4

2 に答える 2

15

$config['log_path']ファイルではなく、ディレクトリへのパスであると想定されています。CIは、独自のファイルをの形式で書き込みますlog-2012-12-05.php。ディレクトリへのパスを試して、末尾にスラッシュが含まれていることを確認してください。

/*
|--------------------------------------------------------------------------
| Error Logging Directory Path
|--------------------------------------------------------------------------
|
| Leave this BLANK unless you would like to set something other than the default
| application/logs/ folder. Use a full server path with trailing slash.
|
*/
$config['log_path'] = '/var/log/ci_logs/';
于 2012-12-05T18:27:09.277 に答える
3

問題はSELinuxがこの投稿をチェックすることです。

あなたはこれを試してみてください:

# Ownership
sudo chown apache:apache -R /data/www/html/sites/mysite
cd /data/www/html/sites/mysite

# File permissions, recursive
find . -type f -exec chmod 0644 {} \;

# Dir permissions, recursive
find . -type d -exec chmod 0755 {} \;

# SELinux serve files off Apache, resursive
sudo chcon -t httpd_sys_content_t /data/www/html/sites/mysite -R

# Allow write only to specific dirs
sudo chcon -t httpd_sys_rw_content_t /data/www/html/sites/mysite/logs -R
sudo chcon -t httpd_sys_rw_content_t /data/www/html/sites/mysite/uploads -R

https://blog.lysender.com/2015/07/centos-7-selinux-php-apache-cannot-writeaccess-file-no-matter-what/

于 2019-02-18T20:39:47.613 に答える