機械系大学生の修行ログ

sh-lu0's Tech Blog

アイドルが力をくれる

CodeIgniterのLogが出力できない

CodeIgniterのLog

Vagrant + CentOS7にCodeIgniterを入れて環境構築を行なった。
CodeIgniterのlogの設定はapplication/config/config.phpで行う。

log_path

ログの出力先。
デフォルトはapplication/logs20XX-XX-XX.phpのようなログが出力される。

$config['log_path'] = '';
log_threshold

どのログを出力させるか設定を行う。

|   0 = Disables logging, Error logging TURNED OFF
|   1 = Error Messages (including PHP errors)
|   2 = Debug Messages
|   3 = Informational Messages
|   4 = All Messages
$config['log_threshold'] = [1,2];
ログの埋め込み
log_message('debug', 'テスト');

原因

logsフォルダは存在するが、ログファイルが生成されない。

調べてみると、vagrantの共有フォルダで
apacheの書き込み権限がないのが原因だったみたい。

$ ls -al 該当フォルダのパス

で確認するとオーナーとグループがvagrantだったので
Vagrantfileで設定を変更

解決法:Vagrantfileで権限を変更

config.vm.synced_folder "./data", "/var/www/html/", mount_options: ['dmode=777','fmode=755']

参考リンク

vagrant共有フォルダのパーミッションでハマった話 | Buddying Blog
【vagrant】共有フォルダのパーミッションで悩んだ話【chmodできない】 - すこしふしぎ.
vagrant上、共有ファイルのパーミッションを変更する - Qiita