10

任何人都可以让 httpd 使用 Red Hat Software Collections 中的 rh-php56 吗?

我看到有关如何在 CLI 上启用更新版本的 php 的文档......但不是让 Apache 使用通过 rh-php56 包安装的新版本的 PHP。

(我应该澄清一下——这是针对 RHEL 7.x 机器的)

4

3 回答 3

5

rh-php56 仅为 httpd24 提供 mod_php(不适用于基本系统)

更简单的方法是使用 php-fpm(它也允许在线程模式下运行 apache)

看:

总结上面的帖子,在 /etc/httpd/conf.d/php.conf 中使用

# Redirect to local php-fpm is mod_php not available
<IfModule !mod_php5.c>
    <FilesMatch \.php$>
        SetHandler "proxy:fcgi://127.0.0.1:9000"
    </FilesMatch>
</IfModule>
于 2015-07-14T09:20:49.697 回答
1

将 LoadModule 命令添加到您的 httpd.conf 并将其指向 RHSCL 中的 php56 模块:

LoadModule php5_module /opt/rh/httpd24/root/usr/lib64/httpd/modules/librh-php56-php5.so

这通常似乎对我有用,但我只测试了基本的页面渲染。如果有一些与在常规 Apache 配置中加载特殊集合模块相关的错误,我不会感到惊讶。毕竟,RH Special Collections 软件包故意安装到文件系统的完全不同部分以避免冲突。您可能需要考虑使用 RHSCL 中的 HTTPD24 和 PHP56 以避免配置问题。

于 2016-05-02T16:58:38.107 回答
0

我最近不得不为 RHEL 7 机器上的一些 PHP webapps 升级到 php56。nginx我查看了 httpd24 路由​​,出于某种原因,将库存RHEL 包与rh-php56-php和一起使用似乎要简单得多rh-php56-php-fpm

  1. 安装rh-php56-php你需要的包
  2. 启用并启动rh-php56-php-fpmsystemd 服务并进行配置php-fpm/etc/opt/rh/rh-php56/即编辑php-fpm.confphp-fpm.d/www.conf文件)。您需要决定是否希望 php-fpm 至少在 unix 套接字上侦听或通过 TCP 侦听,并且正确配置日志记录以帮助进行故障排除也是一个好主意。
  3. 将 nginx 配置为代理到您的 php-fpm unix 套接字或 TCP 地址,例如localhost:9000. 关于 php-fpm 和 Drupal / Mediawiki / Wordpress / 等的 nginx 配置有大量可搜索的资源。
于 2017-07-21T21:29:56.053 回答