【问题标题】:Can't open php file in apache 2.4 Centos 6无法在 apache 2.4 Centos 6 中打开 php 文件
【发布时间】:2020-12-09 08:19:14
【问题描述】:

我有一台运行 Centos 6 的服务器。最近我使用 remi repo 将 php 升级到 7.2,使用 sclo(httpd24) 将 apache 2.4 升级到。

[user@server1 ~]$ httpd -v
Server version: Apache/2.4.34 (Red Hat)
Server built:   May 28 2020 08:47:33

[user@server1 ~]$ php -v
PHP 7.2.33 (cli) (built: Aug  4 2020 10:02:54) ( NTS )

我的问题是,如果我在 /var/www/html 中放了一个 phpinfo(),我的浏览器没有显示任何内容,如果我打开源代码,我只能看到 php 代码。

我如何将 apache 和 php 连接在一起? 谢谢..

【问题讨论】:

    标签: php apache centos6


    【解决方案1】:

    您是否确定在 apache 服务器配置 httpd.conf 文件中您正确指向了 php.so 文件??

    您需要确保 LoadModule php7_module /path/to/the/php@7.2/version/libphp7.so 行在您的配置中。如果您最近将 PHP 更改为 7.2,则需要修改该行,使其指向正确的 php 版本。

    在我的例子中,我将 php 7.2、7.3 和 7.4 版本用于不同的目的,在我的 httpd.conf 文件中,我有以下几行:

    #LoadModule php7_module /usr/local/opt/php@7.2/lib/httpd/modules/libphp7.so
    #LoadModule php7_module /usr/local/opt/php@7.3/lib/httpd/modules/libphp7.so
    LoadModule php7_module /usr/local/opt/php@7.4/lib/httpd/modules/libphp7.so
    

    正如您所见,每个版本都指向不同的so文件,您需要为7.2版本找到正确的文件,并根据php版本通过注释或取消注释来指向它。

    【讨论】:

    • LoadModule 不会解决任何问题,如果在使用 httpd 2.4 时在 httpd 2.2 API 上提供模块中继。
    【解决方案2】:

    我使用 remi 将 php 升级到 7.2

    我的存储库中的包是针对基本 httpd 版本 2.2 构建的。

    您仍然可以使用 httpd 2.4(来自 SCL),但在这种情况下您需要使用 FPM

    阅读:PHP Configuration Tips

    顺便说一句,由于 CentOS 6 即将结束生命周期(几个月后),我衷心建议您使用更新版本的 CentOS(7 或 8 都默认具有 httpd 2.4)

    【讨论】:

    • 这与 PO 提出的问题有什么关系?如果可以,请更好地解释这如何使服务器配置(apache)看起来和使用正确的 php 版本
    • 它与问题有关,与从我的存储库安装的软件包有关。
    • 网络服务器配置详细解释,在链接的文章中一步一步。
    猜你喜欢
    • 2011-05-16
    • 2012-08-14
    • 2018-12-20
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 2011-02-06
    • 2017-11-30
    • 2018-12-24
    相关资源
    最近更新 更多