apache मैं 500 आंतरिक सर्वर त्रुटि [डुप्लिकेट] देने के बजाय PHP को त्रुटि कैसे प्रदर्शित कर सकता हूं




3 Answers

यह ध्यान देने योग्य है कि यदि आपकी त्रुटि .htaccess के कारण है, उदाहरण के लिए एक अनुपलब्ध rewrite_module, आप अभी भी 500 आंतरिक सर्वर त्रुटि देखेंगे।

apache php

इस प्रश्न का उत्तर यहां दिया गया है:

ऐसा पहले कभी नहीं हुआ है। आमतौर पर यह त्रुटि प्रदर्शित करता है, लेकिन अब यह मुझे 500 आंतरिक सर्वर त्रुटि देता है। बेशक, जब यह त्रुटि प्रदर्शित हुई, तो यह अलग सर्वर था। अब मैं एक नए सर्वर पर हूं (मेरे पास पूर्ण रूट है, इसलिए अगर मुझे इसे php.ini में कहीं भी कॉन्फ़िगर करने की आवश्यकता है, तो मैं कर सकता हूं।) या शायद यह अपाचे के साथ कुछ है?

मैं फ़ाइल को अपने अन्य सर्वर पर स्थानांतरित करके और त्रुटि खोजने के लिए वहां चलाकर इसे स्थापित कर रहा हूं, लेकिन यह बहुत कठिन हो गया है। क्या इसे ठीक करने का कोई तरीका है?




PHP कोड से प्रदर्शित त्रुटि को सक्षम करना मेरे लिए काम नहीं करता है। मेरे मामले में, एनजीआईएनएक्स और पीएचपी-एफएमपी का उपयोग करके, मैं grep का उपयोग कर लॉग फ़ाइल को ट्रैक करता हूं। उदाहरण के लिए, मुझे पता है कि फ़ाइल नाम mycode.php त्रुटि 500 ​​का कारण बनता है, लेकिन यह नहीं पता कि कौन सी रेखा है। कंसोल से, मैं इसका उपयोग करता हूं:

/var/log/php-fpm# cat www-error.log | grep mycode.php

और मेरे पास आउटपुट है:

[04-Apr-2016 06:58:27] PHP Parse error:  syntax error, unexpected ';' in /var/www/html/system/mycode.php on line 1458

इससे मुझे उस रेखा को खोजने में मदद मिलती है जहां मेरे पास टाइपो है।




जांचने के लिए सावधान रहें

display_errors

या

error_reporting

आईएनआई फ़ाइल में कहीं और सक्रिय है (कोई टिप्पणी नहीं)।

मेरे विकास सर्वर ने कुबंटू 16.04 में अपग्रेड के बाद त्रुटियों को प्रदर्शित करने से इंकार कर दिया - मैंने कई बार php.ini की जांच की थी ... यह पता चला कि एक diplay_errors = off था; मेरे नीचे लगभग 100 लाइनें

display_errors = on;

तो आखिरी एक मायने रखता है!






Related


Tags

apache   php