狀況
我將 php.ini 做以下設定
# vim php.ini
log_errors = On
error_log = /var/log/httpd/php_err.log

再去建立檔案
# touch /var/log/httpd/php_err.log
# chown apache:apache /var/log/httpd/php_err.log

重新啟動 apache
# service httpd restart

設定完成之後,做測試,居然都無法寫入檔案

解決方法
最後找了好久,想到了一個可能,我去檢查 /var/log/httpd 這層的權限
# ll -d /var/log/httpd
drwx------ 2 root root 4096  6月  4 09:50 /var/log/httpd
權限是 700 ,所以非 root 使用者會完全看不到底下的東西,也會完全無法寫入,所以直接改裡面檔案的權限是沒有用的

把權限改為 755
# chmod 755 /var/log/httpd

再去看就成功了
# vim /var/log/httpd/php_err.log
[04-Jun-2013 10:06:08] PHP Parse error:  syntax error, unexpected T_STRING in /var/www/lms/err.php on line 3

不過最後我還是決定把檔案放在 /var/log/php_err.log
不去改動 /var/log/httpd 目錄的權限

arrow
arrow
    全站熱搜

    wbkuo 發表在 痞客邦 留言(0) 人氣()