我正在运行带有 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 模块,但事实并非如此。然后我用谷歌搜索“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/