Centos7 上的 PHP-FPM 与 Directadmin -> 通过 httpd-alias 的 url 未解析为 php

Posted

技术标签:

【中文标题】Centos7 上的 PHP-FPM 与 Directadmin -> 通过 httpd-alias 的 url 未解析为 php【英文标题】:PHP-FPM on Centos7 with Directadmin -> url via httpd-alias not parsed as php 【发布时间】:2021-08-22 08:25:25 【问题描述】:

通过别名处理 url 的问题。这是一台 Centos7 机器,运行 custombuild 2.0 Directadmin。

别名本身可以工作,但是当 php 设置为拥有所有域的用户的目录时,不会解析 PHP。

httpd-alias.conf 别名 /shared /home/[user]/shared/

用权限、openbasedir、proxypass 等尝试了一切

谁对我有正确的答案?现在挣扎了2天。

看起来别名 /shared 在某处需要额外的 php 解析设置。这是一个 PHP_FPM 问题,使用 PHP-MOD 可以正常工作。

【问题讨论】:

【参考方案1】:

在尝试了其他所有方法之后,这个问题的有效答案是; (将 [user] 替换为您的用户名。)

添加一个(自定义)文件 /usr/local/directadmin/data/templates/custom/ virtual_host2.conf.pre

<Directory "/home/[user]/shared">
    <FilesMatch "\.(inc|php|phtml|phps|php74)$">
        AddHandler "proxy:unix:/usr/local/php74/sockets/[user].sock|fcgi://localhost/" .inc .php .phtml .php74
    </FilesMatch> 
    <IfModule mod_fcgid.c>
        SuexecUserGroup [user] [user]
    </IfModule>
</Directory>

在 httpd-alias 中制作别名(当然也可以使用自定义模板)

shared /home/[user]/shared

./build rewrite_confs

别名正在运行,PHP 正在被解析。

【讨论】:

以上是关于Centos7 上的 PHP-FPM 与 Directadmin -> 通过 httpd-alias 的 url 未解析为 php的主要内容,如果未能解决你的问题,请参考以下文章

centos7 配置php-fpm

Centos6和Centos7上安装LAMP(PHP-FPM模式编译安装)

centos7上的h5ai折腾记

Centos7下yum安装配置nginx与php

Centos7下yum安装配置nginx与php

lnmp配置(linux(centos7).ngnix.mariadb.php(php-fpm,phpmyadmin))