শুধুমাত্র এইচটিসেসের মাধ্যমে পিএইচপি-তে ত্রুটি প্রদর্শন সক্ষম করা হচ্ছে


113

আমি অনলাইনে একটি ওয়েবসাইট পরীক্ষা করছি।

এখনই, ত্রুটিগুলি প্রদর্শিত হচ্ছে না (তবে আমি জানি তারা বিদ্যমান) exist

আমার কাছে কেবলমাত্র .htaccessফাইলটিতে অ্যাক্সেস রয়েছে ।

আমি আমার .htaccessফাইলটি ব্যবহার করে কীভাবে সমস্ত ত্রুটি করব ?


আমি আমার .htaccessফাইলে এই লাইনগুলি যুক্ত করেছি :

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on

এবং পৃষ্ঠাগুলি এখন প্রদর্শিত:

অভ্যন্তরীণ সার্ভার ত্রুটি


আমি কিছু গুগলিং করেছি, আমার htaccess এ কিছু পতাকা যুক্ত করেছি; এবং আমার পৃষ্ঠাগুলি আবার প্রদর্শিত হতে পারে না
ওগুগুয়া বেলনউউ

3
দেখে মনে হচ্ছে htaccess থেকে এই সেটিংসটিকে ওভাররাইড করার অধিকার আপনার নেই। AllowOverride Allআপনার যদি অ্যাক্সেস থাকে তবে আপনাকে অ্যাপাচি কনফিগারেশনে সেট করতে হবে।
কাপা

আপনার অ্যাপাচি ত্রুটি লগ পরীক্ষা করুন। আপনি 500 অভ্যন্তরীণ ত্রুটি কেন পাচ্ছেন তার সঠিক কারণ থাকতে হবে। আপনি ব্রাউজারে যা দেখেন তা হ'ল ডায়াগনস্টিক উদ্দেশ্যে ডিজাইন অকেজো।
মার্ক বি

উত্তর:


190

.htaccess:

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag  log_errors on
php_value error_log  /home/path/public_html/domain/PHP_errors.log

14
আমি এই htaccess এ এই রেখাগুলি যুক্ত করেছি: php_flag html_erferences উপর php_flag ডিসপ্লে_এরফেসে php_flag ডিসপ্লে_স্টার্টআপ_অরফেস এবং পৃষ্ঠাগুলি অভ্যন্তরীণ সার্ভার ত্রুটি দেখায়
ওগুগুয়া বেলনউউ

4
পিএইচপিকে অ্যাপাচি মডিউল হিসাবে ব্যবহার করার সময়, আপনি অ্যাপাচি কনফিগারেশন ফাইলগুলিতে (যেমন httpd.conf) এবং .htaccess ফাইলগুলিতে নির্দেশাবলী ব্যবহার করে কনফিগারেশন সেটিংসও পরিবর্তন করতে পারেন। এটি করার জন্য আপনার "AllowOverride অপশনগুলি" বা "AllowOverride All" সুবিধাগুলি প্রয়োজন। php.net/manual/en/configuration.changes.php
silex

পিএইচপি_আরফারস.লগ তৈরি করুন এবং এটিকে অন্য 777 উপায়ে তৈরি করুন সম্ভবত আপনি অ্যাপাচি দ্বারা নির্মিত এবং ভরাট ফাইলটি দেখতে পাবেন না ... কমপক্ষে আমাকে এটি তৈরি করতে হয়েছিল।
পি জুনিয়র

2
ওগুগুয়ার মতো আমারও এখন এই লাইনগুলি ব্যবহার করে অভ্যন্তরীণ সার্ভার ত্রুটি রয়েছে।
অবতরণ করেছে

1
যদি আপনি 500 পেয়ে থাকেন তবে সম্ভবত আপনি পিএইচপি-এফপিএম ব্যবহার করছেন, মোড_এফপি নয়।
এমপিচডউইক

41
php_flag display_errors on

ত্রুটির প্রকৃত প্রদর্শন চালু করতে।

আপনি যে ধরণের ত্রুটি প্রদর্শন করছেন সেগুলি সেট করতে আপনার ব্যবহার করতে হবে:

php_value error_reporting <integer>

এই পৃষ্ঠা থেকে পূর্ণসংখ্যার মানগুলির সাথে সম্মিলিত: http://php.net/manual/en/errorfunc.constants.php

নোট আপনি যদি আপনার পূর্ণসংখ্যার জন্য -1 ব্যবহার করেন তবে এটি সমস্ত ত্রুটি প্রদর্শন করবে এবং তারা নতুন ধরণের ত্রুটি যুক্ত করলে ভবিষ্যতের প্রমাণ হবে।


17

আমি বিদ্যমান উত্তরে আরও বিশদ যুক্ত করার মত অনুভব করছি:

# PHP error handling for development servers
php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_flag ignore_repeated_errors off
php_flag ignore_repeated_source off
php_flag report_memleaks on
php_flag track_errors on
php_value docref_root 0
php_value docref_ext 0
php_value error_log /full/path/to/file/php_errors.log
php_value error_reporting -1
php_value log_errors_max_len 0

লগ ফাইলটিতে 777 বা 755 অনুমতি দিন এবং তারপরে কোডটি যুক্ত করুন

<Files php_errors.log>
     Order allow,deny
     Deny from all
     Satisfy All
</Files>

.htaccess এর শেষে। এটি আপনার লগ ফাইলটিকে রক্ষা করবে।

এই বিকল্পগুলি ডেভলপমেন্ট সার্ভারের জন্য উপযুক্ত। প্রোডাকশন সার্ভারের জন্য আপনার শেষ ব্যবহারকারীকে কোনও ত্রুটি প্রদর্শন করা উচিত নয়। সুতরাং ডিসপ্লে ফ্ল্যাগগুলি বন্ধ করে দিন

আরও তথ্যের জন্য, এই লিঙ্কটি অনুসরণ করুন: htaccess মাধ্যমে উন্নত পিএইচপি ত্রুটি পরিচালনা করে


1
ত্রুটি লগ ফাইলকে chmod "0644" দেওয়ার সম্পর্কে কীভাবে? এটা এখনও কাজ করা হবে?
আন্দ্রে চেনিয়ার

2

যদি আপনি কেবল মারাত্মক রানটাইম ত্রুটি দেখতে চান:

php_value display_errors on
php_value error_reporting 4

2

এটি আমার জন্য কাজ করে ( রেফারেন্স ):

# PHP error handling for production servers
# Disable display of startup errors
php_flag display_startup_errors off

# Disable display of all other errors
php_flag display_errors off

# Disable HTML markup of errors
php_flag html_errors off

# Enable logging of errors
php_flag log_errors on

# Disable ignoring of repeat errors
php_flag ignore_repeated_errors off

# Disable ignoring of unique source errors
php_flag ignore_repeated_source off

# Enable logging of PHP memory leaks
php_flag report_memleaks on

# Preserve most recent error via php_errormsg
php_flag track_errors on

# Disable formatting of error reference links
php_value docref_root 0

# Disable formatting of error reference links
php_value docref_ext 0

# Specify path to PHP error log
php_value error_log /home/path/public_html/domain/PHP_errors.log

# Specify recording of all PHP errors
# [see footnote 3] # php_value error_reporting 999999999
php_value error_reporting -1

# Disable max error string length
php_value log_errors_max_len 0

# Protect error log by preventing public access
<Files PHP_errors.log>
 Order allow,deny
 Deny from all
 Satisfy All
</Files>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.