После обновления моего VPS я получаю следующую ошибку:
Не удалось запустить apache: Запуск httpd: синтаксическая ошибка в строке 31 /etc/httpd/conf.d/php.conf: неверная команда 'php_value', возможно, с ошибкой или определена модулем, не включенным в конфигурацию сервера [FAILED]
Включить модули на PHP:
[Модули PHP] bz2 календарь Ядро ctype дата скручивания дата dom ereg exif fileinfo filter ftp gd gettext gmp hash iconv imap intl ionCube Loader json libxml mbstring mcrypt mhash mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_sqlite Сканерфаллослофалксплсфоцксплсфоцк юмл шхоллсфалксплосфинкцій шлінфл юр шл ю ш з л е н л ю ш е н л ю ш е н л ю ш е з л ю ш е н л ю ш е з з л е н к з л о й з л о л з л ли й ш е л о ш л о л ли ли ли Сфин лимиты в виде логических ссылок в формате PDF? wddx xml xmlreader xmlrpc xmlwriter xsl zip zlib [Zend Modules] PHP-загрузчик ionCube
Линия относительно ошибки:
php_value session.save_handler "файлы"
Что означает ошибка и как ее исправить?
источник
Apache httpd-2.4 может завершиться с ошибкой, описанной выше, если вы по ошибке настроили его на использование модуля mpm, отличного от prefork (поскольку только prefork mpm прекрасно работает с php в Linux (CentOs7 / RHEL7). Исправление конфигурации Apache httpd для использования prefork mpm решит проблему). проблема.
/etc/httpd/conf.modules.d/10-php.conf
LoadModule php5_module modules / libphp5.so
/etc/httpd/conf.modules.d/00-mpm.conf
LoadModule mpm_prefork_module modules / mod_mpm_prefork.so
источник
Это может произойти, если вы настроили Apache для использования другого MPM, кроме mod_prefork. Проверьте, какой модуль используется
httpd -V
командой. Это должно показать вам что-то вроде:Если это не так, проверьте
как описано здесь и убедитесь, что следующая строка присутствует в нем и не закомментирована:
В случае, если вам нужно использовать другой модуль,
mod_prefork
вам не нужно комментировать или удалять эти строки.источник
Как прокомментировал Дэвид ранее, это вероятно потому, что мод PHP был отключен из Apache2.
Для меня это выглядело как ошибка при (пере) запуске Apache:
Затем внутри journalctl -xe:
Это произошло при обновлении с Ubuntu 17.10 до 18.04 (и, как следствие, с PHP7.1 до 7.2), которое, по-видимому, полностью отключило libapache2-mod-php *.
В Ubuntu следующее должно это исправить:
источник
Просто прокомментируйте эти строки.
я имел
Затем запустите «перенастроить, если вы в Plesk, а затем перезапустите Apache», казалось, работает нормально. Это могло произойти после обновления plesk № 53 10 минут назад.
источник
Перед запуском обновления с Atomic сделайте резервную копию файла
php.conf
. Затем после завершения обновления перезаписать новый файл старым.источник
У меня была похожая проблема, я понял, что модуль php5 был закомментирован, что означает, что он не может загрузиться, и в phpmyadmin conf он выдавал ошибки из-за наличия php_admin_value, который, вероятно, работал с php5_module, и его не было на месте. Я пошел в httpd.conf и оставил комментарий:
источник
Изменить : После реализации моих комментариев ниже, я обнаружил, что была еще одна причина, по которой я столкнулся с этой проблемой. На сервере реализован PHP-FPM. Часть реализации PHP-FPM означала, что это
/etc/httpd/conf.d/php.conf
было отключено (то есть переименовано в php.conf.bak). Недавнее обновление принесло новый php.conf. В результате конфигурация PHP-FPM конфликтовала и вызывала упомянутые ошибки. Решением было просто переименовать php.conf в нечто подобноеphp.conf.bak.feb2019
. В результате php.conf не загружается и, следовательно, нет конфликта с php-fpm./// Перед редактированием: /////
Решение для меня было сочетание ответов, представленных здесь.
Я заметил эту ошибку после обновления сервера Oracle Linux 7, который долго не обновлялся
По предложению @dasharathmasirkar, @davidhoude @alexlanger, проблема связана с тем, что конфигурация prefork mpm перезаписывается после обновления.
Для решения этой проблемы:
проверьте
/etc/httpd/conf.modules.d/00-mpm.conf
и убедитесь, что следующая строка не закомментирована:Также убедитесь, что другой рабочий mpm закомментирован, чтобы он не конфликтовал:
Затем перезапустите Apache:
apachectl restart
источник