几年前,我在自己维护的一台Linux服务器上安装了Apache 2.2x和PHP 5.3.1。我使用.tar.gz并按照指示构建它们(而不是rpm和什么)。一切都很好。

今天我需要安装这个看起来像一个PHP库。我执行了安装的所有步骤,找到了ibm_db2。所以在$PHP_HOME/lib/extensions/somecomplicatedname/ibm_db2.so。

最大的问题是,最后一步是配置文件php.ini,但我的系统上没有任何php.ini文件。恐怖中的恐怖。PHP工作得很好,当然,除了我想使用的这个新奇的ibm_db2 thingamajig之外,这样人们就可以使用GUI来修补DB2。(我尝试了一个小的PHP脚本,该脚本失败并指示ibm_db2函数不可用。)

我每隔几年就要处理一次PHP,所以请从非常基础的层面上给我一些启发,告诉我如何才能启用基于web的GUI对DB2的访问。


当前回答

这个命令应该可以帮助您找到它

php -r "phpinfo();" | grep php.ini

其他回答

根据这个答案,从PHP 7开始,常规的PHP .ini文件被删除,并添加了PHP .ini-production和PHP .ini- development。

因此,而不是php.ini,这在我的情况下不存在(我已经安装了php 8.1),使用php.ini-production,它位于php安装文件夹(类似于:C:\ php -8.1.5),并创建一个文件并命名为php.ini,然后复制php.ini-production的内容在这个新的php.ini。

在命令窗口中键入

php --ini

它会像这样显示路径:

Configuration File (php.ini) Path: /usr/local/lib
Loaded Configuration File:         /usr/local/lib/php.ini

如果上面的命令不起作用,那么使用下面的命令:

echo phpinfo();

在命令行中运行:

php -r "echo php_ini_loaded_file().PHP_EOL;"

你可以通过以下方式获取更多关于配置文件的信息:

$ -> php -i | ack config # Use fgrep -i if you don't have ack

Configure Command =>  './configure'  ...
Loaded Configuration File => /path/to/php.ini

在Linux上使用以下命令找到php.ini文件的路径。

locate php.ini

输出:

/etc/php.ini
/etc/php.ini.rpmnew
/usr/share/doc/php-common-5.4.45/php.ini-development
/usr/share/doc/php-common-5.4.45/php.ini-production

或者试试另一种方式:

php --ini

它显示了路径结果。