致命错误:找不到类'ZMQContext'(但它已安装并在终端上运行)

Kro*_*oss 3 php nginx

我想尝试ZeroMQ,我写了两个php文件,service.php和client.php.我使用linux终端运行服务php /web/test/service.php,没关系,终端打印"等待客户端连接......".

但是,我通过chrome explorer请求我的client.php,错误发生了,我检查了我的error.log,有消息"php致命错误:类'ZMQContext'找不到........"

我使用命令php -m检查我的php扩展,zmq已经在该列表中.

els*_*ooo 6

问题是ZMQ模块是在PHP CLI(命令行界面)中加载的,但它没有加载到Apache中.因此,service.php从命令行顺利运行但client.php不能使用ZMQContext,因为Apache不加载ZMQ.

有两个不同的.ini文件.这些可能是(但可能会有所不同,具体取决于您的发行版):

  • /etc/php5/apache2/php.ini 对于Apache
  • /etc/php5/cli/php.ini 用于CLI

但是,目录中的所有.ini文件都会/etc/php5/conf.d/加载到Apache和CLI中.

另请参阅:PHP - 可以从apache访问外部类/库,但不能从phpunit访问(与您的问题完全相反)