Почему Apache 2.1.7 в WAMP не регистрирует ошибки PHP в журнале ошибок PHP?

У меня установлен WAMP и решил использовать Apache 2.1.7 по умолчанию в последней версии WAMP; причина – мой хост-сервер, на котором мой сайт также использует 2.1.7. Раньше я использовал Apache 2.2.11 в WAMP, потому что мой последний хост также использовал эту версию.

Проблема, с которой я сталкиваюсь сейчас, это, по-видимому, у меня есть отладчик или что-то еще, когда я получаю ошибку PHP, как показано на рисунке ниже, и ошибка не регистрируется в журнале ошибок PHP, даже если она включена и т. Д. В php.ini . Когда я вернусь к более ранней версии Apache, все ошибки регистрируются в журнале ошибок PHP.

Так что это должен быть Apache. В основном я хочу, чтобы PHP регистрировал ошибки в журнале ошибок PHP, как это было раньше. Почему это происходит и как я могу его изменить?

Я не возражаю против того, как отображается ошибка, поскольку она помогает в любом случае, потому что я могу видеть ее намного лучше, но мне все равно нравится регистрироваться в журнале ошибок PHP.

Вот как выглядит PHP-ошибка с момента переключения версии Apache в WAMP;

Вот изображение:

Введите описание изображения здесь

Мне удалось разобраться. Чтобы снова включить регистрацию ошибок PHP, выполните следующие действия:

  1. Щелкните левой кнопкой мыши по значку WAMP на панели задач.
  2. Затем наведите курсор мыши на PHP>
  3. Затем перейдите вниз и нажмите на php.ini
  4. Теперь ищите:

; error_log = "c: /wamp/logs/php_error.log"

(Обратите внимание, что ваше местоположение может отличаться на вашем компьютере, а не то же самое, что и мое.) Теперь просто удалите ; от начала строки и сохранить php.ini и перезапустить все службы WAMP.

Чтобы ошибки выглядели так, как они обычно делают в PHP, и чтобы удалить оранжевую рамку в файле php.ini выполните следующие действия:

zend_extension = "c: /wamp/bin/php/php5.3.5/zend_ext/php_xdebug-2.1.0-5.3-vc6.dll"

И ДОБАВИТЬ a ; к началу строки и перезапустить WAMP. Теперь WAMP снова вернется к норме.

Кажется, новый WAMP отключает регистрацию ошибок файла PHP и вместо этого регистрирует ошибки PHP в журнале ошибок Apache. Я не уверен, что это было раньше, но в любом случае, это решило мою проблему.

Проверьте phpinfo(); вывод из «нового» Apache и сравнить его с тем, что выдает старый Apache. Настройки PHP можно переопределить в 3-х местах: http.conf, .htaccess и php.ini – и PHP может иметь несколько разных php.ini. phpinfo () является авторитетным источником для текущей конфигурации, поскольку во время выполнения он запрашивает внутренние элементы PHP для информации, поэтому он будет сообщать о реальных «живых» настройках.

Если есть какие-либо различия в настройках (особенно связанные с журналом), вы можете начать поиск там, где это переопределение.

edit: теперь, когда ваше изображение появляется, это информативное предупреждение, а не ошибка. Означает, что вы пытаетесь получить доступ к элементу массива, который не существует, например, что-то вроде $_GET['this does not exist'] .

Я следовал за решением

  1. Щелкните левой кнопкой мыши по значку WAMP на панели задач.
  2. Затем наведите курсор мыши на PHP>
  3. Затем спуститесь и нажмите на php.ini. Теперь ищите:; error_log = "c: /wamp/logs/php_error.log;

Теперь просто удалите ; ,