PHP5-FPM отказывается регистрировать ошибки, выполняемые под Foreman nginx, с помощью пакета сборки Heroku

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

VAGRANT BOX: Усадьба / Laravel (содержит установку PHP / Nginx)
После того, как запущенный ящик запускается, я останавливаю запущенные службы (sudo service nginx stop а также sudo service php5-fpm stop). На этой коробке установлен инструментальный пояс Heroku. Я использую PHP версии 5.6.0-1 + deb.sury.org ~ trusty + 1, но пробовал с предыдущими версиями (разные версии коробки Homestead / Laravel).

УСТАНОВКА КОМПОЗИТОРА: У меня есть следующий файл composer.json, хотя я пробовал различные варианты, включая не использование собственного пакета сборки, а только использование по умолчанию и т. Д.

{
"extra": {
"heroku": {
"document-root": "webroot",
"index-document": "index.php"}
},
"repositories": [
{
"type": "git",
"url": "https://github.com/ashleycoker/heroku-buildpack-php"}
],
"require-dev": {
"heroku/heroku-buildpack-php": "dev-master"}

}

МАСТЕР: Я запускаю свой собственный профайл с помощью sudo foreman start -f Procfile.dev показано здесь:

web: vendor/bin/heroku-php-nginx -v webroot/

Все работает как положено, кроме регистрации ошибок для PHP. Я на самом деле запускаю установку expressionengine, и могу нормально получить доступ к PHPinfo и увидеть, что журнал ошибок установлен на /tmp/heroku.php-fpm.www.5000.log, log_errors включен, и все, что вы ожидаете, выглядит нормально в INI-файле.

Я думаю, что я прочитал / попробовал каждое решение в Google, чтобы заставить это работать, но безрезультатно. Я попытался изменить владельца файла error_log, изменить его местоположение, изменить настройки журнала ошибок PHP, в том числе иметь E_ALL, чтобы все регистрировалось. Я даже получаю уведомления PHP на экране, так что я знаю, что что-то должно входить в файл журнала.

Важной строкой из heroku-php-nginx, которая кажется важной, является тот факт, что он перенаправляет все журналы в stderr, чтобы Heroku мог их забрать — именно то, что я хочу, чтобы произошло.

( touch "${logs[@]}"; tail -qF -n 0 "${logs[@]}" | strip_fpm_child_said 1>&2 || true; echo 'tail "${logs[@]}"' >&3; ) 3> $wait_pipe &

Однако я нигде не вижу журналы!

Я просто хочу, чтобы ошибки регистрировались, чтобы я мог спокойно работать!

Если вам нужна дополнительная информация, просто спросите, и я с радостью отвечу как можно скорее, предоставив как можно больше информации.

Спасибо

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]