На моем Ubuntu 18.04 установлено несколько версий php - php7.1 php5.6
Когда я использую php7.1, apache успешно перезагружается.
Но когда я переключаюсь на php5.6 с помощью этой команды:
sudo a2dismod php7.1 ; sudo a2enmod php5.6 ; sudo service apache2 restart
Apache выдает мне эту ошибку:
Job for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -xe" for details.
systemctl status apache2.service
результат:
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: failed (Result: exit-code) since Sat 2018-10-27 13:19:32 +06; 7s ago
Process: 6458 ExecStart=/usr/sbin/apachectl start (code=exited, status=139)
Oct 27 13:19:32 protectedfor apachectl[6458]: AH00112: Warning:
DocumentRoot [/home/protectedfor/scj] does not exist
Oct 27 13:19:32 protectedfor apachectl[6458]: AH00112: Warning:
DocumentRoot [/var/www/worldclass/worldclass.kg] does not exist
Oct 27 13:19:32 protectedfor apachectl[6458]: [Sat Oct 27 13:19:32.683512 2018] [alias:warn] [pid 6469] AH00671: The Alias directive in /etc/apache2/apache2.conf at line
Oct 27 13:19:32 protectedfor apachectl[6458]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerNa
Oct 27 13:19:32 protectedfor apachectl[6458]: Segmentation fault (core dumped)
Oct 27 13:19:32 protectedfor apachectl[6458]: Action 'start' failed.
Oct 27 13:19:32 protectedfor apachectl[6458]: The Apache error log may have more information.
Oct 27 13:19:32 protectedfor systemd[1]: apache2.service: Control process exited, code=exited status=139
Oct 27 13:19:32 protectedfor systemd[1]: apache2.service: Failed with result 'exit-code'.
Oct 27 13:19:32 protectedfor systemd[1]: Failed to start The Apache HTTP Server.
Журнал Apache:
[Sat Oct 27 12:43:02.172511 2018] [mpm_prefork:notice] [pid 6518] AH00169: caught SIGTERM, shutting down
[Sat Oct 27 12:43:10.498278 2018] [so:warn] [pid 5126] AH01574: module php7_module is already loaded, skipping
[Sat Oct 27 12:43:10.544626 2018] [mpm_prefork:notice] [pid 5137] AH00163: Apache/2.4.29 (Ubuntu) configured -- resuming normal operations
[Sat Oct 27 12:43:10.544656 2018] [core:notice] [pid 5137] AH00094: Command line: '/usr/sbin/apache2'
[Sat Oct 27 12:43:28.243406 2018] [mpm_prefork:notice] [pid 5137] AH00169: caught SIGTERM, shutting down
Любые советы очень ценятся. Спасибо!
Дело не только в отключении модуля. Вы должны установить некоторые значения по умолчанию, чтобы это работало
Пожалуйста, попробуйте это
установлен от 7.x до 5.x
sudo a2dismod php7.1
sudo a2enmod php5.6
sudo update-alternatives --set php /usr/bin/php5.6
sudo update-alternatives --config php
sudo update-alternatives --set phar /usr/bin/phar5.6
sudo systemctl restart apache2
установлен от 5.x до 7.x
sudo a2enmod php7.1
sudo a2dismod php5.6
sudo update-alternatives --set php /usr/bin/php7.1
sudo systemctl restart apache2
lil объяснение: a2dismod a2enmod - для веб-PHP, альтернативы обновления - для PHP CLI. и может быть безопасно выполнен в одной строке: sudo a2dismod php7.1 ; sudo a2enmod php5.6 ; sudo service apache2 restart
для Интернета (apache), и это мне всегда помогает! но иногда status = 139 - показывает, что модуль загружен / выгружен неудачно, поэтому необходимо повторно включить модуль только один (sudo a2dismod php7.1 ; sudo a2enmod php7.1 ; sudo service apache2 restart
), и служба apache запустится успешно!
проверьте, является ли ваш локальный IP-адрес 127.0.1.1, набрав ifconfig (linux) или ipconfig (windows). Если это не так, вам следует изменить имя сервера в apache.conf.