Ubuntu 16.04 Бродячая коробка. PHP 5.6 fastcgi. Я получаю общую ошибку 500 на странице, но нигде нет журналов

Новая коробка Vagrant. У меня есть сценарий предоставления, который настраивает PHP 5.6 и 7.1 с использованием fastcgi, поскольку я выполняю тест обновления, поэтому хочу переключить версии. Начиная с включенного PHP5.6.

Виртуальный хост выглядит следующим образом:

ServerName local
DocumentRoot /var/www/html
<IfModule mod_fastcgi.c>
    AddHandler php56-fcgi-www .php
    Action php56-fcgi-www /php56-fcgi-www
    Alias /php56-fcgi-www /usr/lib/cgi-bin/php56-fcgi-www
    FastCgiExternalServer /usr/lib/cgi-bin/php56-fcgi-www -socket /run/php/php5.6-fpm.sock -idle-timeout 1800 -pass-header Authorization
    <Directory "/usr/lib/cgi-bin">
        Require all granted
    </Directory>
</IfModule>

<IfModule mod_fastcgi.c>
    AddHandler php71-fcgi-www .php
    Action php71-fcgi-www /php71-fcgi-www
    Alias /php71-fcgi-www /usr/lib/cgi-bin/php71-fcgi-www
    FastCgiExternalServer /usr/lib/cgi-bin/php71-fcgi-www -socket /run/php/php7.1-fpm.sock -idle-timeout 1800 -pass-header Authorization
    <Directory "/usr/lib/cgi-bin">
        Require all granted
    </Directory>
</IfModule>

<IfModule mod_fastcgi.c>
    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
        SetHandler php56-fcgi-www
    </FilesMatch>
</IfModule>

<Directory "/var/www/">
    AllowOverride All
</Directory>

<VirtualHost *:80>
    DocumentRoot /var/www/html/mysite/public-www
    ServerName mysite.local

    <IfModule mod_fastcgi.c>
        <FilesMatch ".+\.ph(p[345]?|t|tml)$">
            SetHandler php56-fcgi-www
        </FilesMatch>
    </IfModule>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot /var/www/phpmyadmin
    ServerName phpmyadmin.mysite.local

    <IfModule mod_fastcgi.c>
        <FilesMatch ".+\.ph(p[345]?|t|tml)$">
            SetHandler php56-fcgi-www
        </FilesMatch>
    </IfModule>
</VirtualHost>

PHPMyAdmin работает нормально. Но при посещении mysite.local отображается общая ошибка браузера 500. Я добавил phpinfo.php, чтобы проверить свои настройки. Я рад поделиться всем выводом, но вот соответствующие основы:

display_errors = On
error_reporting = E_ALL
error_log = /var/log/php_errors.log

Я обнаружил, что файл ошибки выше не был создан по ошибке, поэтому я создал его вручную и изменил его на 0777 для развлечения. Он остается пустым после того, как я вижу загрузку 500. Я также проверил журналы /var/log/apache2. Журнал доступа показывает ответ 500, но в error_log ничего нет. Также посмотрел в php5.6-fpm.log. Ничего такого.

Вопрос простой: как я могу найти причину ошибки 500?


person Aaryn    schedule 08.08.2019    source источник


Ответы (1)


Решил это с помощью этого ответа на вопрос, связанный с nginx. Я обнаружил, что в этом коде было три строки включения с оператором глушителя @. После удаления @ ошибки отображаются на экране и в файле журнала, определенном выше.

person Aaryn    schedule 08.08.2019