Ошибки сервера сервера Apache 500, показывающие ничего

Сразу после некоторой помощи с новой установкой PHP.

Я установил новый сервер Centos 6.2 с apache PHP, и у меня возникли проблемы с отображением ошибок. Я скопировал все файлы приложений веб-сайта из другой, а также структуры папок и всего в / etc / httpd /.

Когда я обращаюсь к своему сайту, я получаю ошибку 500 или пустую страницу. Журналы ничего не показывают, кроме формы регистрации ошибки 500:

[24/Feb/2012:17:33:25 +1100] "GET / HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.1) Gecko/20100101 Firefox/6.0.1" 405 229 7176 

Мой htaccess выглядит так: ErrorDocument 404 /error.php

 php_flag display_errors on php_flag display_startup_errors on php_flag file_uploads on php_value error_reporting 6143 php_value max_input_time 60 php_value post_max_size 8M php_value upload_max_filesize 2M ~ 

Поэтому ошибки включаются …

 Start of PHP file has: error_reporting(-1); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); 

и php.ini имеет error_reporting, установленный в E_ALL.

… но я получаю ошибки на экране для некоторых вещей (например, не закрывая строку), но мои проблемы немного больше, чем я думаю, и я не знаю, с чего начать отладку!

Поэтому я думаю, что мой вопрос: как мне начать отладку ошибки сервера 500?

Когда сообщения об ошибках безумно отсутствуют на экране и из файлов Apache error_log и в любом другом месте, мне посчастливилось получить их, добавив другой PHP-файл, используя его только для разработки:

 <?php error_reporting(E_ALL); ini_set("display_errors", 1); include("productioncode.php"); ?> в <?php error_reporting(E_ALL); ini_set("display_errors", 1); include("productioncode.php"); ?> 

Таким образом, даже если у productcode.php есть ошибки времени компиляции, приведенный выше код запускается, и сообщения отображаются, в отличие от простого размещения первых двух строк в верхней части productioncode.php.

@Jaspreet Chahal и @Saiyam Patel – я только что оправился от прекрасного вечера ошибки 500 в access_log, например

 77.22.98.222 - - [26/Feb/2012:22:38:41 -0500] "GET /buggycode.php HTTP/1.1" 500 - west-real-estate.com "-" "Mozilla/5.0 (Windows NT 5.0; rv:11.0) Gecko/20100101 Firefox/11.0" "PHPSESSID=hcd04vv9e1a316cr9miauf3bl5" - 0 

и никаких сообщений об ошибках PHP в любом файле журнала httpd из (глупо) кодирования {'foo' => 'bar'} вместо массива ('foo' => 'bar'). Используя вышеприведенную технику, было обнаружено подробное сообщение об ошибке, включая все важные номера строк.

просто попробуйте проверить из вашего файла конфигурации, где хранятся журналы. То, что вы показали, является журналом доступа, а не журналом ошибок. поэтому просто проверьте, где хранится журнал ошибок. Ура! Как вы сказали, его centos Проверьте этот каталог /var/logs/httpd и проверьте файл error_log . если его пользовательский журнал затем ищет этот файл.

btw 500 – ошибка сервера, поэтому для меня я думаю, что он должен что-то сделать с вашей настройкой или настройкой соединения db.

Ошибка сервера Apache 500 Это не ошибка PHP, это ошибка сервера (сервер не может обрабатывать ваш запрос) ИЛИ может быть проблемой с файлом .htaccess, вероятно, перенаправлением

ура