apache2 php 未执行

apache2 php 未执行

当我访问 localhost 中的页面时,仅显示 php 代码。此版本:

$ php -v
PHP 7.0.10-2+deb.sury.org~xenial+1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.10-2+deb.sury.org~xenial+1, Copyright (c) 1999-2016, by Zend Technologies

我尝试过升级到 16.04。php7 在浏览器中无法运行

sudo a2enmod php7.0
ERROR: Module php7.0 does not exist!

当我单击标签时

sudo a2enmod php7

它完成了

sudo a2enmod php7.0.load.dpkg-dist

但结果是一样的

$ sudo a2enmod php7.0.load.dpkg-dist 
ERROR: Module php7.0.load.dpkg-dist does not exist!

我是这样安装 php 的:

sudo apt-get update
sudo apt-get remove php5-common -y
sudo apt-get purge php5-common -y
sudo apt-get install php7.0 php7.0-fpm php7.0-mysql -y
sudo apt-get --purge autoremove -y

我没有启用 fpm。

我都有这些包

$ a2enmod php
php5.6                 php7.0.load.dpkg-dist
$ a2enmod php5.6
Considering dependency mpm_prefork for php5.6:
Considering conflict mpm_event for mpm_prefork:
ERROR: Module mpm_event is enabled - cannot proceed due to conflicts. It needs to be disabled first!
Considering conflict mpm_worker for mpm_prefork:
ERROR: Could not enable dependency mpm_prefork for php5.6, aborting

我删除了 5.6 但它仍然显示;为什么?

答案1

你需要选择mpm_worker对比mpm_prefork(或者mpm_事件). 只有一个 ApacheMPM 模块。 尝试:

sudo a2dismod mpm_worker
sudo a2enmod mpm_prefork
sudo systemctl restart apache2.service

看一眼这个优秀的答案在 Serverfault。

相关内容