Назад | Перейти на главную страницу

Конец вывода скрипта перед заголовками: php5

Я унаследовал роль системного администратора на сервере, на котором запущен веб-сайт WordPress поверх Apache 2.4 / Debian. Это почти работает, но время от времени выдает "500 внутренних ошибок сервера". В моем файле error.log я вижу:

End of script output before headers: php5, referer: http://www.xxxxxxx.xxx/wp-admin/post-new.php

Я думаю, что на сервере работает система mod_fcgid, поскольку у меня

/etc/apache2/conf-enabled/fcgid.conf 

со следующим содержанием:

<Location />
  AddHandler fcgid-script .php
  Options +ExecCGI +FollowSymLinks
  FcgidWrapper /usr/bin/php-cgi .php
</Location>

<Files ~ (\.php)>
    AddHandler fcgid-script .php
    FCGIWrapper /usr/lib/cgi-bin/php5 .php
    Options  ExecCGI FollowSymLinks
    allow from all 
</Files>

и я нашел другие вопросы, Вот и Вот, это примерно та же ошибка, что и я, и в качестве возможной причины указывается некоторая неправильная конфигурация mod_fcgid (неправильные значения в переменных PHP_FCGI_CHILDREN и PHP_FCGI_MAX_REQUESTS). Ответ на этом форуме также предлагает неправильную конфигурацию fcgid и, кажется, дает более подробную информацию о проблеме (возможное узкое место в количестве принятых потоков / соединений), но в нем отсутствует пошаговое объяснение того, что делать.

Я не эксперт по mod_fcgid. Можете ли вы помочь мне понять, где и как мне следует установить правильные значения для переменных PHP_FCGI_CHILDREN и PHP_FCGI_MAX_REQUESTS?

Вы можете добавить директиву FCGI в Apache pre_virtualhost_global.conf или файл .htaccess для установки wordpress или в vhost для самого домена.