代码之家  ›  专栏  ›  技术社区  ›  KeatsKelleher

httpd.conf中出错。找不到api模块结构'php5_module'

  •  0
  • KeatsKelleher  · 技术社区  · 14 年前

    我最近安装了phc,php编译器。我从源代码开始安装lamp,其中包括启用apache的so和启用php5的embed(这些选项与安装和以后的配置最相关)。

    安装完成后,我意识到phc还不支持php5.3,所以我将其卸载并安装php5.2。phc现在可以正常工作了,命令行的php客户机应用程序也可以正常工作。当我评论第193行时,Apache似乎也运行良好(见下文)。它只是不解析PHP。

    httpd: Syntax error on line 193 of /etc/apache2/conf/httpd.conf: Can't locate API module structure `php5_module' in file /usr/local/lib/libphp5.so: /usr/local/lib/libphp5.so: undefined symbol: php5_module
    

    当我从终端检查我的PHP版本时,我得到了预期的输出(5.2):

    [root@localhost conf]# php -v
    PHP 5.2.14 (cli) (built: Sep  7 2010 22:50:25) 
    Copyright (c) 1997-2010 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
    

    我确保将lib php5.so文件从构建php5.2的文件夹(/usr/local/src/php-5.2.14)移动到/usr/local/lib。我还将php.ini移到了/usr/local/lib。

    我这里有什么东西不见了吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   KeatsKelleher    14 年前

    好啊!

    显然,配置php时,必须包含指定wehre的行,以便找到用于正确安装的apx:

    --with-apxs2=/etc/apache2/bin/apxs
    

    我这样做了,问题就消失了:)