我有一个奇怪的问题,我似乎无法find和search,并研究了很多到最后。
我已经通过spawn-fcgi在nginx(cent os 5)上正常运行了php-fastcgi。 但是,我正在尝试加载memcache和mongo php扩展,由于某些原因,nginx跳过/etc/php.d/中的ini文件。 我知道memcache和mongo扩展安装正确,因为我的apache实例在同一个盒子加载他们罚款。 我想也许我需要从源代码生成PHP,特别是包括在./configure ..只是有点害羞,因为我不知道这将如何影响安装,因为我安装了百胜的一切。
最后,所有的权限检查出来,我甚至试图把扩展直接到/etc/php.ini没有成功,问题依然存在。
只是想补充一点,简单地重新启动nginx服务来加载模块(根据需要)是不够的。
以下是NGINX上的phpinfo()显示:
configuration文件(php.ini)path:/etc/php.ini
扫描该目录以获取其他.ini文件:/etc/php.d
附加.ini文件parsing:/etc/php.d/dbase.ini,/etc/php.d/dom.ini,/etc/php.d/gd.ini,/etc/php.d/imap.ini, /etc/php.d/json.ini,/etc/php.d/mbstring.ini,/etc/php.d/mysql.ini,/etc/php.d/mysqli.ini,/etc/php.d /pdo.ini,/etc/php.d/pdo_mysql.ini,/etc/php.d/pdo_sqlite.ini,/etc/php.d/xmlreader.ini,/etc/php.d/xmlwriter.ini,/等/ php.d / xsl.ini
这是Apache上的phpinfo()显示的内容:
configuration文件(php.ini)path:/etc/php.ini
扫描该目录以获取其他.ini文件:/etc/php.d
附加.ini文件parsing:/etc/php.d/dbase.ini,/etc/php.d/dom.ini,/etc/php.d/gd.ini,/etc/php.d/imap.ini, /etc/php.d/json.ini,/etc/php.d/mbstring.ini,/etc/php.d/memcache.ini,/etc/php.d/mongo.ini,/etc/php.d /mysql.ini,/etc/php.d/mysqli.ini,/etc/php.d/pdo.ini,/etc/php.d/pdo_mysql.ini,/etc/php.d/pdo_sqlite.ini,/ etc / php.d / xmlreader.ini,/etc/php.d/xmlwriter.ini,/etc/php.d/xsl.ini
..注意apache加载memcache.ini和mongo.ini和nginx没有。 什么可能是错的?
如果你正在使用fast-cgi,那么确保你重新启动它。
创build一个新的phpinfo()文件,在Apache和Nginx上运行它,并检查“Loaded Configuration File”,“Additional .ini files parsed”,“Scan this dir for additional .ini files”等。
如果path不同,您应该检查这些文件之间的差异,并修改nginx使用的path。
例如phpinfo()文件:
<?php phpinfo(); ?>
我也遇到了这个。 Spock是正确的 – 重新启动nginx连接到PHP。 我正在使用PHP-FPM,所以它是: /etc/init.d/php5-fpm restart在我的情况