Журнал ошибок PHP - почему у меня так много проблем с openbase_dir? - PullRequest
0 голосов
/ 25 июня 2019

Во-первых, извинения за смутное название.Не уверен, как лучше это сказать.Я начну с копии моих журналов php.

[25-Jun-2019 12:21:44] WARNING: [pool corrigansni.ivech.co.uk] child 58505 said into stderr: "NOTICE: PHP message: PHP Warning:  Unknown: open_basedir restriction in effect. File(C:\Inetpub\vhosts\ivech.co.uk\logs\php_errors\choicerentals.ivech.co.uk\php_error.log) is not within the allowed path(s): (/var/www/vhosts/ivech.co.uk/:/tmp/) in Unknown on line 0"
[25-Jun-2019 12:21:44] WARNING: [pool corrigansni.ivech.co.uk] child 58504 said into stderr: "NOTICE: PHP message: PHP Warning:  Unknown: open_basedir restriction in effect. File(C:\Inetpub\vhosts\ivech.co.uk\logs\php_errors\choicerentals.ivech.co.uk\php_error.log) is not within the allowed path(s): (/var/www/vhosts/ivech.co.uk/:/tmp/) in Unknown on line 0"
[25-Jun-2019 12:21:45] WARNING: [pool corrigansni.ivech.co.uk] child 58499 said into stderr: "NOTICE: PHP message: PHP Warning:  Unknown: open_basedir restriction in effect. File(C:\Inetpub\vhosts\ivech.co.uk\logs\php_errors\choicerentals.ivech.co.uk\php_error.log) is not within the allowed path(s): (/var/www/vhosts/ivech.co.uk/:/tmp/) in Unknown on line 0"
[25-Jun-2019 12:21:45] WARNING: [pool corrigansni.ivech.co.uk] child 58456 said into stderr: "NOTICE: PHP message: PHP Warning:  Unknown: open_basedir restriction in effect. File(C:\Inetpub\vhosts\ivech.co.uk\logs\php_errors\choicerentals.ivech.co.uk\php_error.log) is not within the allowed path(s): (/var/www/vhosts/ivech.co.uk/:/tmp/) in Unknown on line 0" 

Это всего лишь небольшой раздел моих журналов.Я предполагаю, что у меня есть ошибки программирования, которые пытаются записать в журналы, но это происходит на каждой странице загрузки примерно 60 поддоменов.Я только узнал об этом из-за некоторых серьезных проблем со скоростью в последнее время.Нагрузка на сервер нормальная, однако скорость запуска нескольких сценариев ajax за последнее время резко снизилась.Я надеюсь, что это все связано, и, решая эту проблему, проблемы со скоростью решат.

Моя главная проблема заключается в том, что независимо от ошибок php, они не могут писать из-за проблемы openbase_dir.Однако, как вы можете видеть из журналов, он даже не пытается записать в связанную папку.

поддомен: corrigansni пытается записать в папку журнала для choicerentals даже если они не связаны и субдомен choicerentals больше не существует.Мне также не говорят, какой сценарий пытается записать журналы.

Может кто-нибудь ответить на следующие вопросы:

  1. , где может измениться настройка, где он записывает журналы?
  2. почему я получаю неизвестно в строке 0 вместо местоположения скрипта
  3. почему каждая загрузка страницы и вызов ajax могут вызыватьэто должно произойти.

Как примечание, я попытался изменить версию PHP, которую я использую, все еще получаю те же проблемы.

Заранее спасибо

РЕДАКТИРОВАТЬ: Несколько человек предложили аналогичный вопрос в другом месте.Это не совсем то же самое.В этом вопросе спрашивается, как расслабиться openbase_dir, я не хочу этого делать.

Мой вопрос состоит из нескольких частей:

Во-первых;он пытается получить доступ к папке в каталоге, который не имеет отношения к делу.Как мне изменить это местоположение.

Во-вторых;Мои настройки openbase_dir кажутся правильными, так почему бы не получить к ним доступ.

В-третьих.Что может привести к попытке записи в файл error_log, но из неизвестного места.

Ответы [ 2 ]

0 голосов
/ 26 июня 2019

Для любого, кто когда-либо найдет это, я нашел свою проблему В моей структуре папок был небольшой глупый файл с именем .user.ini, который устанавливал путь к Windows. Должно быть, это был старый сервер Windows, который мы использовали.

0 голосов
/ 25 июня 2019

В ваших настройках PHP указано неверное значение для для параметра error_log , которое указывает на каталог, в который вы указали PHP, что он не должен писать. Это вызывает предупреждение при запуске каждого запроса, так как PHP обрабатывает ваши файлы настроек, прежде чем он достигнет первой строки вашего кода PHP. Так как он не может записать в указанный файл журнала, он возвращается к значению по умолчанию, которое означает «стандартную ошибку», которая в конечном итоге обнаруживается и помещается в общий файл журнала, который вы видите.

Существует несколько мест, где можно задать переменную конфигурации, обсуждаемую в главе Конфигурация времени выполнения руководства по PHP ; например, может быть один или несколько файлов php.ini, и настройки передаются из файлов конфигурации Apache. Либо параметр был неправильно скопирован с одного сайта на другой, либо он задан в глобальном файле конфигурации, который используется обоими сайтами.

Необычный путь в журнале (C:\Inetpub\vhosts\ivech.co.uk\logs\php_errors\choicerentals.ivech.co.uk\php_error.log) предполагает, что настройка в любом случае неверна, кроме упоминания неверного сайта; возможно, он указывает относительный путь, а не абсолютный (начиная с C:\).

Как отмечено в комментариях, похоже, что настройка open_basedir также неверна, так как она выглядит в формате Linux, тогда как в сообщении журнала указывается, что вы работаете в Windows.

...