启动apache + SVN时出错
以下是错误 -
-bash-4.1$ ./apachectl configtest
httpd: Syntax error on line 149 of /ngs/app/istsvnp/httpd/conf/httpd.conf: Cannot load modules/mod_dav_svn.so into server: /ngs/app/istsvnp/httpd/modules/mod_dav_svn.so: undefined symbol: svn_error_purge_tracing
检查mod_dav_svn.so -
的共享库依赖项时bash-4.1$ ldd -r /ngs/app/istsvnp/httpd/modules/mod_dav_svn.so
linux-vdso.so.1 => (0x00007fff9f7ff000)
libsvn_repos-1.so.0 => /usr/lib64/libsvn_repos-1.so.0 (0x00007f42a4b58000)
libsvn_fs-1.so.0 => /usr/lib64/libsvn_fs-1.so.0 (0x00007f42a4950000)
libsvn_fs_fs-1.so.0 => /usr/lib64/libsvn_fs_fs-1.so.0 (0x00007f42a4728000)
libsvn_fs_util-1.so.0 => /usr/lib64/libsvn_fs_util-1.so.0 (0x00007f42a4526000)
libsvn_delta-1.so.0 => /usr/lib64/libsvn_delta-1.so.0 (0x00007f42a431a000)
libsvn_subr-1.so.0 => /usr/lib64/libsvn_subr-1.so.0 (0x00007f42a40c9000)
libaprutil-1.so.0 => /ngs/app/istsvnp/library/lib/libaprutil-1.so.0 (0x00007f42a3ea4000)
libexpat.so.0 => /ngs/app/istsvnp/library/lib/libexpat.so.0 (0x00007f42a3c7c000)
libapr-1.so.0 => /ngs/app/istsvnp/library/lib/libapr-1.so.0 (0x00007f42a3a4a000)
librt.so.1 => /lib64/librt.so.1 (0x00007f42a3842000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f42a360a000)
libz.so.1 => /lib64/libz.so.1 (0x00007f42a33f4000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f42a31f0000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f42a2fd2000)
libc.so.6 => /lib64/libc.so.6 (0x00007f42a2c3e000)
libsvn_fs_base-1.so.0 => /usr/lib64/libsvn_fs_base-1.so.0 (0x00007f42a2a0f000)
libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0 (0x00007f42a277f000)
libexpat.so.1 => /ngs/app/istsvnp/Libexpat/lib/libexpat.so.1 (0x00007f42a2557000)
libdb-4.7.so => /lib64/libdb-4.7.so (0x00007f42a21e3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f42a4fb9000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f42a1f6b000)
undefined symbol: ap_filter_flush (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
undefined symbol: svn_error_purge_tracing (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
undefined symbol: svn_repos_fs_change_rev_prop4 (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
undefined symbol: svn_repos__fs_type (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
undefined symbol: dav_register_provider (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
undefined symbol: ap_fputstrs (/ngs/app/istsvnp/httpd/modules/mod_dav_svn.so)
......
......
我可以在测试框中以相同的配置启动apache,我已经安装了Apache + SVN而没有任何问题。
但是将所有必要的二进制文件复制到Production框并在那里启动apache会产生上述错误。
我已经确认LD_LIBRARY_PATH没有问题,并且通过创建tar文件和执行sftp将测试框的所有内容复制到生产框。
即使我从生产框中删除了所有Apache + SVN引用,并在测试框中重新安装了Apache + SVN模块,并再次从测试框复制二进制文件到生产框,但同样的错误发生了。
但我只能在没有SVN模块的情况下启动apache模块(即从httpd.conf中删除mod_dav_svn.so和mod_authz_svn.so)
以下是我在测试框中安装SVN的方法。
tar jxf subversion-1.8.11.tar.bz2
cd subversion-1.8.11
./configure --prefix=/ngs/app/apstoold/ApacheAndSVN/subversion --disable-static --with-expat=/ngs/app/apstoold/ApacheAndSVN/Libexpat/include:/ngs/app/apstoold/ApacheAndSVN/Libexpat:lib --with-apxs=/ngs/app/apstoold/ApacheAndSVN/httpd/bin/apxs --with-apr=/ngs/app/apstoold/ApacheAndSVN/library/bin/apr-1-config --with-apr-util=/ngs/app/apstoold/ApacheAndSVN/library/bin/apu-1-config
make
make install
我安装了以下版本。
Server: Apache/2.4.12 (Unix) OpenSSL/1.0.2 SVN/1.8.11 PHP/5.5.21
有人可以帮帮我吗。
由于
答案 0 :(得分:1)
您显然存在依赖性问题。我不知道你正在使用哪个发行版,但我想(!)你已经手动将SVN更新到1.8.x并遇到了这些问题。可能存在多个问题: