У меня установлен 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, выполните следующие действия:
; 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']
.
Я следовал за решением
Теперь просто удалите ;
,