如何确认 Ubuntu 服务器上启用了 php

如何确认 Ubuntu 服务器上启用了 php

我对 Linux 不太熟悉。我正在尝试通过 ssh 设置服务器。我通过此命令安装了 apache php 和 mysql。

sudo aptitude install apache2 php5-mysql libapache2-mod-php5 mysql-server

但我认为服务器上未启用 php。

当我运行命令时,我收到如下响应

$ which apache2ctl
/usr/sbin/apache2ctl

但当我检查时$ which php没有收到任何回复。

$ locate php5
/etc/apparmor.d/abstractions/php5
/usr/share/ubuntu-serverguide/html/C/php5.html

答案1

在 Debian(以及 Ubuntu)上,Apache 配置文件存储在 下/etc/apache2。在该目录中,有 2 个用于配置模块的子目录: mods-availablemods-enabled。当您安装 Apache 模块(即:foo)时,它会将foo.load(可能还有foo.conf)放入/etc/apache2/mods-available目录中。当您使用 启用 Apache 模块时,它会为 中的每个匹配文件a2enmod创建一个符号链接。 /etc/apache2/mods-enabled/etc/apache2/mods-available

因此,对于启用了 PHP5 的 Ubuntu 服务器,您应该看到如下内容:

$ cd /etc/apache2
$ ls -l mods-*/*php*
-rw-r--r-- 1 root root 133 2008-02-27 15:49 mods-available/php5.conf
-rw-r--r-- 1 root root  59 2008-02-27 15:49 mods-available/php5.load
lrwxrwxrwx 1 root root  27 2009-02-05 07:30 mods-enabled/php5.conf -> ../mods-available/php5.conf
lrwxrwxrwx 1 root root  27 2009-02-05 07:30 mods-enabled/php5.load -> ../mods-available/php5.load

如果目录中未显示 php5 配置文件mods-enabled,请按如下方式启用它们:

$ sudo a2enmod php5
$ sudo /etc/init.d/apache2 restart

完成后,为了测试 PHP5 是否已配置,请创建/var/www/test.php以下命令:

$ echo "<?php phpinfo(); ?>" | sudo tee /var/www/test.php
$ sudo chown www-data:www-data /var/www/test.php
$ sudo chmod 755 /var/www/test.php

完成后,您应该能够浏览/test.php该服务器并查看 PHP 配置数据。

答案2

使用phpinfo()函数。创建一个 Apache 将提供的 .php 文件并包含以下内容:

<?php

phpinfo();

?>

当您导航到 .php 文件并安装 php 时,它会为您提供有关已安装的 php 版本的大量信息。

答案3

我相信 php 二进制文件是名为 php5-cli 的单独包的一部分,但您似乎没有安装它。

答案4

a2dismod禁用 apache 模块,并且在不带参数执行时显示启用的模块列表:

您的选择是:别名 auth_basic authn_file authz_default authz_groupfile authz_host authz_user autoindex cgi deflate dir env mime mod-evasive mod-security negotiationphp5 重写 scgi setenvif ssl 状态 unique_id

您想要禁用哪个模块(可以使用通配符)?

如果php5在列表中,则表示已安装并启用。(CTRL-C 放弃该命令)

相关内容