जवाबों:
डिफ़ॉल्ट रूप से, /var/log/apache2/error.log
।
इसमें कॉन्फ़िगर किया जा सकता है /etc/php5/apache2/php.ini
।
error.log.*
फ़ाइलों की जांच करना चाहते हैं
इन सेटिंग्स की जाँच करें php.ini
:
error_reporting = E_ALL | E_STRICT
(php.ini में विकास के लिए अनुशंसित)error_log = /var/log/php_errors.log
फिर मैन्युअल रूप से लॉग फ़ाइल बनाएँ
touch /var/log/php_errors.log
chown www-data: /var/log/php_errors.log
chmod +rw /var/log/php_errors.log
अब आप इस तरह से PHP त्रुटियों को देख सकते हैं
tail /var/log/php_errors.log
यह मेरे लिए इस मुद्दे का एक सहमत समाधान है।
chmod 640 /var/log/php_errors.log
आप Apache में प्रत्येक VirtualHost के लिए एक विशिष्ट त्रुटि लॉग फ़ाइल को भी परिभाषित कर सकते हैं। यदि आपके पास कोई VirtualHost परिभाषित है /etc/apache2/sites-available/
और /etc/apache2/sites-enabled
(सक्षम के साथ sudo a2ensite [your-virtualhost-definition-file]
) सक्षम है , तो आप अपने VirtualHost कॉन्फिगर के अंदर निम्न पंक्ति जोड़कर त्रुटि लॉग को बदल सकते हैं:
ErrorLog ${APACHE_LOG_DIR}/[your-vhost]-error.log
यह उपयोगी हो सकता है यदि आपके पास बहुत सारे vhost हैं और जहां वे त्रुटियों की रिपोर्ट करते हैं, वहां विभाजन करना चाहते हैं।
इसके अलावा, आप निम्न कमांड जारी करके अपनी त्रुटि लॉग लाइव देख सकते हैं (डिफ़ॉल्ट से अलग होने पर अपनी स्वयं की लॉग फ़ाइल के लिए अनुकूल करें):
sudo tail -f /var/log/apache2/error.log
लाइव डिबगिंग करते समय यह विशेष रूप से उपयोगी है।
error_log = syslog
php.ini में टिप्पणी करता हूं
यदि Apache Webmin / Virtualmin के साथ सेटअप किया गया था तो प्रत्येक VirtualHost के लिए एक अलग फ़ोल्डर है।
यह है
~/logs
प्रत्येक VirtualHost उपयोगकर्ता के लिए फ़ोल्डर।
ये दो फाइलें हैं:
~/logs/access_log
तथा
~/logs/error_log
तो वे हैं
/home/onedomain/logs/access_log
/home/onedomain/logs/error_log
/home/anotherdomain/logs/access_log
/home/anotherdomain/logs/error_log
...
आदि।
प्रत्येक होस्टनाम और चलाने के VirtualHost स्वामी उपयोगकर्ता के रूप में प्रत्येक विशेष डोमेन लॉगिन के लिए लॉग फाइल देखने के लिए
tail -f ~/logs/error_log