我正在使用Nginx和最新的PHP运行Ubuntu 12.04。故事是这样的:
我尝试按照ubuntu的说明安装新的遗留PHP代理:

wget -O - http://download.newrelic.com/548C16BF.gpg | sudo apt-key add -

sudo sh -c 'echo "deb http://apt.newrelic.com/debian/ newrelic non-free"
> /etc/apt /sources.list.d/newrelic.list'

sudo apt-get update
sudo apt-get install newrelic-php5
sudo newrelic-install install

而且它不起作用。完成所有操作后,PHP代理完全无法启动。我什至刷新了一个phpinfo.php快速页面,以查看是否列出了newrelic模块。因此,我用Google搜索了“New relic .deb”,并遇到了这个页面:https://docs.newrelic.com/docs/server/server-monitor-installation-ubuntu-and-debian并按照说明进行操作。安装全部完成,但代理也未启动。我希望保持服务器清洁,因此我决定“确定,因为它不起作用,直到获得新的文物支持,并且可以从头开始时,我将删除已安装的新文物”。因此,我再次按照该链接上的说明进行操作。安装似乎正常。但是,如果我执行命令“PHP”,则会出现以下错误:
root@MYHOSTNAME:/home# php
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20121212
/newrelic.so' - /usr/lib/php5/20121212/newrelic.so: cannot open shared object file:
No such file or directory in Unknown on line 0

我确保在/etc/php/fpm/php.ini文件中没有对newrelic的引用,并仔细检查了该文件夹中是否有任何内容。没有什么。

因此,我的问题是:如何消除该错误?如何使PHP停止尝试加载该newrelic.so模块?我可能会在某处缺少对它的引用吗?

最佳答案

好的,我找到了答案。我无法在以下帖子中描述我对@mike的感谢:Error In PHP5 ..Unable to load dynamic library。我运行了$ grep -Hrv ";" /etc/php5 | grep -i "extension=",它返回了一大堆文件,其中一个是/etc/php5/cli/conf.d/中的newrelic.ini,老实说,我什至都不知道是php目录。所以我跑了sudo rm -rf /etc/php5/cli/conf.d/newrelic.ini并重新启动了nginx和php5-fpm,问题解决了:)

感谢@WayneWhitty的建议!我还将让newrelic知道他们应该在其卸载脚本中对其进行修复。

关于ubuntu - PHP启动: Unable to load dynamic library (NEW RELIC),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19740094/

10-11 16:49