好的,首先让我说,在这种特殊情况下,我被迫使用Apache 1.3有很长的原因。因此,任何回答“你需要升级到Apache 2.x”或“它在Apache 2.x下运行”都没有用。 :)
Apache 1.3使用mod_so编译,当我执行 httpd -l </ em>时,它会显示在列表中。
PHP配置了 --with-apxs = / usr / sbin / apxs ,这是Apache 1.3的apxs的正确位置。
httpd.conf文件包括:
LoadModule php5_module /usr/libexec/apache/libphp5.so
AddModule mod_php5.c
和 / usr / libexec / apache 是 libphp5.so 文件的正确位置。
当我启动Apache时,我得到:
Starting httpd: Syntax error on line 79 of /etc/httpd/conf/httpd.conf:
Can't locate API module structure `php5_module' in file /usr/libexec/apache/libphp5.so: /usr/libexec/apache/libphp5.so: undefined symbol: php5_module
ldd /usr/libexec/apache/libphp5.so 显示:
linux-gate.so.1 => (0x00d78000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x00d40000)
libz.so.1 => /lib/libz.so.1 (0x0018c000)
librt.so.1 => /lib/librt.so.1 (0x001a0000)
libcurl.so.4 => /usr/lib/libcurl.so.4 (0x001a9000)
libm.so.6 => /lib/libm.so.6 (0x00466000)
libdl.so.2 => /lib/libdl.so.2 (0x00212000)
libnsl.so.1 => /lib/libnsl.so.1 (0x00217000)
libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00311000)
libssl.so.10 => /usr/lib/libssl.so.10 (0x00232000)
libcrypto.so.10 => /usr/lib/libcrypto.so.10 (0x00d79000)
libc.so.6 => /lib/libc.so.6 (0x00f06000)
libfreebl3.so => /lib/libfreebl3.so (0x0028b000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00c98000)
/lib/ld-linux.so.2 (0x002f1000)
libcares.so.2 => /usr/lib/libcares.so.2 (0x002e0000)
libidn.so.11 => /lib/libidn.so.11 (0x00cb3000)
libldap-2.4.so.2 => /lib/libldap-2.4.so.2 (0x00ce5000)
libgssapi_krb5.so.2 => /lib/libgssapi_krb5.so.2 (0x03f35000)
libkrb5.so.3 => /lib/libkrb5.so.3 (0x03bd4000)
libk5crypto.so.3 => /lib/libk5crypto.so.3 (0x02a7f000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0x0045c000)
libssh2.so.1 => /usr/lib/libssh2.so.1 (0x056eb000)
libresolv.so.2 => /lib/libresolv.so.2 (0x010a1000)
liblber-2.4.so.2 => /lib/liblber-2.4.so.2 (0x076d0000)
libssl3.so => /usr/lib/libssl3.so (0x078f7000)
libsmime3.so => /usr/lib/libsmime3.so (0x0537d000)
libnss3.so => /usr/lib/libnss3.so (0x03117000)
libnssutil3.so => /usr/lib/libnssutil3.so (0x063ae000)
libplds4.so => /lib/libplds4.so (0x00d71000)
libplc4.so => /lib/libplc4.so (0x00490000)
libnspr4.so => /lib/libnspr4.so (0x01e85000)
libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x054bc000)
libkrb5support.so.0 => /lib/libkrb5support.so.0 (0x00d33000)
libkeyutils.so.1 => /lib/libkeyutils.so.1 (0x00461000)
libselinux.so.1 => /lib/libselinux.so.1 (0x030bb000)
请注意,https.conf中有一个 ClearModuleList ,但是在它之后添加了正确的模块,当 ClearModuleList 被注释掉时,我得到相同的结果
我倾向于PHP编译问题,因为实际上所需的模块似乎缺失了,但在配置和编译PHP时没有错误。
有什么想法吗?