一个包含多个 php.ini 文件的 PHP 安装


One PHP installation with multiple php.ini files

我正在尝试将 php 安装配置为使用多个 php.ini这可行吗?

谢谢

TL;DR 将 PHPIniDir 添加到 Apache conf 文件中,并确保该文件夹包含适合您要求的 php 版本.ini。

为了确保

完整的答案,需要更多信息,但我会做一个假设,并认为您正在使用 LAMP 服务器,并且需要为在 Apache (vhost) 下托管的每个服务器创建自定义 PHP.ini。如果是这样,这是一个简单的过程,让一个(Apache)服务器托管多个虚拟主机,每个虚拟主机都有自己的php.ini文件。

  1. 使用自己的文件夹创建新的虚拟主机(假设/var/www/vhostA)
  2. 在/var/www/vhostA/html 中创建 html 文件夹(包含文档根目录)
  3. 将现有的 php.ini 文件(通常为/etc/php5/apache2/php.ini)复制到/var/www/vhostA/php.ini
  4. 编辑 php.ini(根据 3)作为 vhostA 的目的所需的
  5. 编辑虚拟主机配置文件并添加 PHPIniDir/var/www/vhostA
  6. 重启阿帕奇

一个示例 Apache vhost 配置文件(因此)将读取如下内容:

<VirtualHost 1.2.3.4:80>
    DocumentRoot /var/www/vhostA/html
    <Directory "/var/www/vhostA/html">
        Options -Indexes
    </Directory>
    PHPINIDir /var/www/web1
    ErrorLog ${APACHE_LOG_DIR}/vmhostA-error.log
    CustomLog ${APACHE_LOG_DIR}/vmhostA-access.log combined
</VirtualHost>