Я установил новую установку Ubuntu Server 12.04 LTS на Amazon AWS с * Apache2 / MySQL / PHP5. Когда я запускаю скрипт PHP, и он сталкивается с ошибкой, я не вижу сообщений об ошибках с PHP, все, что я вижу
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfil the request.
Я проверил файл /etc/php5/apache2/php.ini
и насколько я могу сказать, отчеты об ошибках должны быть настроены. Содержимое файла (относительно ошибок):
; display_errors ; Default Value: On ; Development Value: On ; Production Value: Off ; display_startup_errors ; Default Value: Off ; Development Value: On ; Production Value: Off ; error_reporting ; Default Value: E_ALL & ~E_NOTICE ; Development Value: E_ALL | E_STRICT ; Production Value: E_ALL & ~E_DEPRECATED
Может ли кто-нибудь посоветовать? Если я попробую что-то вроде $obj = new ObjectDoesntExist;
он не говорит мне Fatal error: Class 'ObjectDoesntExist'
дает мне ошибку сервера 500.
Есть рекомендации?
* Модули, которые я установил: mysql-server mysql-client apache2 php5 libapache2-mod-php5 phpmyadmin
. Помимо этого, это полностью базовая версия Ubuntu Server 12.04 LTS
EDIT: Если я использую ini_set('display_errors', '1');
в начале моего скрипта он отображает ошибки как обычно, но как включить этот сайт?
Фрагмент php.ini, который вы вставили, имеет точку с запятой (символ;) в каждой строке. Точка с запятой – это начало комментария в php.ini, поэтому все в строке, следующей за точкой с запятой, не используется. Попробуйте вручную установить display_errors в on и error_reporting на E_ALL или удалить соответствующие точки с запятой, чтобы исправить это.
Кроме того, проверьте свой журнал ошибок apache, php может регистрировать свои ошибки там.
отредактируйте файл php.ini с помощью sudo gedit /etc/php5/apache2/php.ini и производственного значения, или вы также можете использовать ini_set ('display_errors', '1'); в верхней части вашего php-файла
У меня была такая же проблема, но не связанная с php.ini, если у вас есть такая же ошибка, прежде чем вы начнете отказываться от своего сервера, сначала проверьте свой код. Ошибка может отсутствовать}) или; или что-то типа того. это просто ссылка, что делать в первую очередь.