Answers:
输入:
sudo apt-get install apache2 php5 libapache2-mod-php5
将安装您需要的所有内容,并将启动支持PHP的apache服务器。
要验证是否已加载php模块,请输入:
a2query -m php5
如果未启用,则加载:
sudo a2enmod php5
并重新启动Apache:
sudo service apache2 restart
感谢您的评论,我更新了php7.x的答案。
安装:
sudo apt-get install apache2 php7.x libapache2-mod-php7.x
校验:
a2query -m php7.x
加载:
sudo a2enmod php7.x
重新启动Apache:
sudo service apache2 restart
apt-get install libapache2-mod-php
a2query -m php7.0
service apache2 restart
Ubuntu 16.04已迁移到PHP7。此单个命令将为您完成此工作:
sudo apt-get install apache2 php libapache2-mod-php
这libapache2-mod-php
是一个安装libapache2-mod-php7的元软件包。
打开php.ini
与nano
在终端:
sudo nano /etc/php/php5.6/apache2/php.ini
然后更改:
short_open_tag = Off
至
short_open_tag = On
然后保存,然后重新启动apache2:
sudo systemctl restart apache2
This directive determines whether or not PHP will recognize code between <? and ?> tags as PHP source which should be processed as such. It is generally recommended that <?php and ?> should be used and that this feature should be disabled [...]
我遇到了同样的问题,但是我的特殊问题是独特的。我在一个用户目录中运行(使用mod_userdir)-这意味着您使用http://host.name.com/~username/example.php访问我的网页
默认情况下,在启用了mods的目录中的php * .conf中禁用了此功能。我必须对其进行修改以将其注释掉:
#<IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_flag engine Off
# </Directory>
#</IfModule>
要弄清楚那真是太痛苦了。
好吧,我怀疑有人会遇到这个特殊问题,但是我想添加一下是因为它对我来说很困惑,也许有人在做同样的事情。我猜除了我之外,没有人再使用〜/ user了。
当然,您必须在此之后重新启动apache。
我的情况有些不同。我从Ubuntu 19.04升级到19.10。在升级时,它安装了php 7.3(已经安装了php 7.2)。安装了2个版本的a2query -m php7.3 return 没有模块匹配php7.3。
我发现的解决方案来自how-to-install-php-7-3-on-ubuntu。
要将PHP 7.0设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.0
要将PHP 7.2设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.2
要将PHP 7.3设置为默认值,请运行
update-alternatives --set php /usr/bin/php7.3
在将Apache配置为使用PHP 7.3之前,我们需要通过键入以下内容来禁用旧版本的PHP 7.0:
a2dismod php7.2
现在,使用以下命令启用新安装的PHP 7.3版本:
a2enmod php7.3
重新启动Apache Web服务器以使更改生效:
sudo systemctl restart apache2
a2enmod
在mods-available和mods-enabled之间手动复制文件。a2enmod
创建一个符号链接,因此您只有一个配置副本。