httpd_module 名称是什么,以便 Apache/Httpd 与 PHP 5.5 一起使用?

What's the httpd_module name so that Apache/Httpd works with PHP 5.5?

我在使用 Chef 在 CentOS 机器上安装 PHP 5.5 时遇到了一些问题。我终于能够安装它,但是当我访问 index.php 它只是下载一个包含内容的文件。

我猜这是因为 Apache(技术上是 Httpd,因为我使用的是 CentOS)没有 mod_php installed/configured.

我使用 php cookbook 安装了 PHP 和以下软件包:

# ... code to add webtatic repository to yum

node.set['php']['packages'] = ['php55w', 'php55w-devel', 'php55w-cli', 'php55w-snmp', 'php55w-soap', 'php55w-xml', 'php55w-xmlrpc', 'php55w-process', 'php55w-mysqlnd', 'php55w-pecl-memcache', 'php55w-opcache', 'php55w-pdo', 'php55w-imap', 'php55w-mbstring']

如果我是对的,上面的代码没有安装 mod_php。以下是我的网络厨师食谱:

httpd_service 'apps' do
    mpm 'prefork'
    action [:create, :start]
    listen_ports ['80', '443']
end

# ... code for virtual hosts

# Install the mod_php Apache module.
# httpd_module 'php' do
#    instance 'apps'
# end

我在使用 PHP 5.4 时取消了对 httpd_module 'php' 指令的注释。 http_module 与 PHP 5.5 一起使用的正确名称是什么?

您似乎找到了其中一位走 Debian 路线并将他们的软件包设置为 php55- 而不是 php- 的人。如果你想从 5.5 升级到任何更高版本,这会让事情变得很痛苦,因为你必须卸载那些并安装新的(即 php70-)。

相反,我建议将您的食谱切换到 Remi repo 并使用 php- 包。

综上所述,php55w 是您的基础 PHP 软件包。我没有看到 php55w-common 包。尝试添加它(或 php-common),它应该会进入 Apache。