У меня есть PHP7, установленный на моем ноутбуке Ubuntu 14.04. Это работало отлично все это в то время как. Теперь, по некоторым причинам мой apache2 не запускается.
anjanesh@anjanesh-Latitude-3560:~$ sudo /etc/init.d/apache2 start
* Starting web server apache2 *
* The apache2 configtest failed.
Output of config test was:
apache2: Syntax error on line 140 of /etc/apache2/apache2.conf: Syntax error on line 3 of /etc/apache2/mods-enabled/php7.0.load: Cannot load /usr/lib/apache2/modules/libphp7.0.so into server: /usr/lib/apache2/modules/libphp7.0.so: undefined symbol: ap_map_http_request_error
Action 'configtest' failed.
The Apache error log may have more information.
Все файлы существуют. В/usr/lib/apache2/modules существует libphp7.0.so.
Недостаточно репутации, чтобы комментировать ...
Мне было недостаточно sudo apt-get update
(комментарий ОП под вопросом).
Но затем также делает sudo apt-get upgrade
исправил это.
Если Вы обновляете свою php версию с помощью ondrej ppa (sudo add-apt-repository ppa:ondrej/php). Необходимо обновить apache2 версию также.
добавьте ниже ppa также и обновите apache2 пакет.
sudo add-apt-repository ppa:ondrej/apache2
sudo apt update
sudo apt install -y apache2
Затем включают libapache2-mod-php7.0 или libapache2-mod-php.
$ sudo a2enmod php
или
$ sudo a2enmod php7.0
или
$ sudo a2enmod php7.1
Перезапуск апачи.
$ sudo service apache2 restart
Ваша проблема решена.
Переустановленный PHP на 16.04 LTS для фиксации этого.Примечание: после выполнения apt update
Apache2 не установил бы до sudo apt autoremove
был выполнен.
sudo aptitude install php7.0 libapache2-mod-php7.0 php7.0 php7.0-common php7.0-gd php7.0-mysql php7.0-mcrypt php7.0-curl php7.0-intl php7.0-xsl php7.0-mbstring php7.0-zip php7.0-bcmath php7.0-iconv php-mcrypt
sudo aptitude install mysql-server
sudo aptitude install apache2
apachectl start