Q. I've installed Apache2 and mod_security21 under FreeBSD. Whenever I try to restart apach22 process I get following error:
Performing sanity check on apache22 configuration:
httpd: Syntax error on line 106 of /usr/local/etc/apache22/httpd.conf: Cannot load /usr/local/libexec/apache22/mod_security2.so into server: /usr/local/libexec/apache22/mod_security2.so: Undefined symbol "xmlFree"
How do I fix this problem?
A. First make sure you are running updated version for both Apache and mod_security. Next open your httpd.conf file:
vi /usr/local/etc/apache22/httpd.conf
Find line that read as follows:
LoadModule security2_module libexec/apache22/mod_security2.so
Add line before above directive, so that it should look like as follows:
LoadFile /usr/local/lib/libxml2.so LoadModule security2_module libexec/apache22/mod_security2.so
Save and close the file. Restart apache:
# /usr/local/etc/rc.d/apache22 restart
Featured Articles:
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- My 10 UNIX Command Line Mistakes
- 10 Greatest Open Source Software Of 2009
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- Top 20 OpenSSH Server Best Security Practices
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Linux Video Editor Software
- Email FAQ to a friend
- Download PDF version
- Printable version
- Comment RSS feed
- Last Updated: 09/18/08




{ 3 comments… read them below or add one }
It would be useful if you explained what the problem is, and how you arrived at the solution.
a) Error itself indicated that it can not load xmlFree, which is part of libxml (used by many open source apps). So I needed to load libxml before mod_security. This is well known problem with apache.
b) Run strings command on mod_security2.so to get idea about functions and other sutff
c) Track syscall by running ktrace
d) Experience
HTH
Thanks.