我们需要将php.ini的位置显式传递给php-fpm吗?

前端之家收集整理的这篇文章主要介绍了我们需要将php.ini的位置显式传递给php-fpm吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看到一个奇怪的问题,我的PHP.ini没有被使用,如果我在启动时没有明确地将它传递给PHP-fpm.

这是我正在使用的暴发脚本:

start on (filesystem and net-device-up IFACE=lo)
stop on runlevel [016]

pre-start script
    mkdir -p /run/PHP
end script


expect fork
respawn
exec /usr/local/PHP/sbin/PHP-fpm --fpm-config /etc/PHP/PHP-fpm.conf

如果使用上面的PHP启动PHP,我的PHP.ini永远不会被使用,即使它位于配置文件(PHP.ini)Path中.

这是PHPinfo()的相关部分:

Configuration File (PHP.ini) Path           /etc/PHP/
Loaded Configuration File                   (none)
Scan this dir for additional .ini files     (none)
Additional .ini files parsed                (none)

如果我修改upstart脚本的最后一行,将PHP-fpm明确指向PHP.ini:

exec /usr/local/PHP/sbin/PHP-fpm --fpm-config /etc/PHP/PHP-fpm.conf -c /etc/PHP/PHP.ini

然后我们看到PHP.ini已加载:

Configuration File (PHP.ini) Path           /etc/PHP/
Loaded Configuration File                   /etc/PHP/PHP.ini
Scan this dir for additional .ini files     (none)
Additional .ini files parsed                (none)

为什么会这样?这是PHP-fpm的怪癖吗?

次要更新:对于使用apt-get安装的PHP5-fpm,这似乎也是一个问题.

我通过运行以下命令在Ubuntu Server 12.04虚拟机中进行了测试安装:

sudo apt-get install Nginx PHP5-fpm

PHP-FPM和Nginx在安装后启动,一切似乎都很好.然后,我在Nginx的配置中取消注释了PHP的设置,并放置了一个测试PHPinfo()文件来检查PHP的设置.

相关位是:

Configuration File (PHP.ini) Path           /etc/PHP5/fpm
Loaded Configuration File                   (none)
Scan this dir for additional .ini files     /etc/PHP5/fpm/conf.d
Additional .ini files parsed                /etc/PHP5/fpm/conf.d/10-pdo.ini

我注意到也没有加载PHP.ini.但是,如果我去/ etc / PHP5 / fpm,我可以看到PHP.ini存在.我还检查了PHP-FPM的启动脚本,并且-c参数未用于将ini文件链接PHP.对于希望PHP-FPM自动加载PHP.ini的人来说,这可能会让人感到困惑.

不,我们没有明确需要在启动时将PHP.ini文件传递给PHP-fpm.

让我们首先处理使用apt-get安装的PHP5-fpm.一旦我重新启动服务器,PHP.ini就被加载了.这很奇怪,但它确实奏效了.

回到我的问题.

请注意,我用–with-config-file-path = / etc / PHP /编译了PHP.使用–with-config-file-path时,向文件添加尾部斜杠会导致此问题.

在我的情况下,我运行make clean来清理旧的编译二进制文件.然后我用–with-config-file-path = / etc / PHP运行configure(注意文件夹没有斜杠).然后制作并安装.

完成后,您会发现/ etc / PHP中的PHP.ini会自动加载,无论我们是否使用-c开关将其传递给PHP-fpm.

原文链接:https://www.f2er.com/php/138929.html

猜你在找的PHP相关文章