[Lxr-dev] various problems with lxr 0.11.1 and 0.11
Brought to you by:
ajlittoz
From: bfffffff8 c. <bff...@ya...> - 2012-04-18 02:38:29
|
Hi there! I've been torturing myself away for the past two days trying to get LXR working on my Debian 6 and CentOS 6.2. I've been going through all the code, doing this and doing that and, well, pretty much pulling my hair out :p I do apologize greatly if any of these problems have already been discussed elsewhere, I have been searching through the lists but have come up empty. I seem to have hit a dead end and thus I seek your help. My configurations are such: Server #1- Debian 6.0.2 - Apache 2.2.16 (Prefork) - perl 5.10.1-17squeeze3 - lxr version 0.11.1 - installed to /opt/lxr Server #2 - CentOS 6.2 (SELinux permissive) - Apache 2.2.15 (Prefork) - perl 5.10.1 - lxr version 0.11 - installed to /opt/lxr LXR on my CentOS seems pretty stable at the moment, though I had to make many changes to get it working. Firstly, there are issues with the apache configuration, permissions issues. I refer to apache-lxrserver.conf where the "Alias ^/lxr /opt/lxr" is found. The first issue for both Servers was that this Alias wasn't working - at all. I noticed after stracing apache that it kept trying to open files in /var/www/html/lxr (for centos) and /var/www/lxr (for debian). The problem seems to be that the Alias directive is tabbed in the configuration file...but that didn't fix it completely either. I had to remove the '^' regex for the alias mapping to work. I haven't used apache in a long time so I'm not really sure why it isn't working. Another problem was the missing lxrconf.d directory, though minor. After fixing that, and fixing the templates/ chmod problem I was still left with templates/html/*.html not being able open() - apache would always get EACCES - on CentOS AND Debian. I checked all the SELinux policies and they were fine. I fixed this problem by cp'ing everything from templates/html (and changing the lxr.conf to point to root lxr dir) (including the lxr.css file which also wouldn't open)to the root lxr directory - /opt/lxr - that finally fixed that problem. But on Server #1 (Debian) this problemgot even worse because I found myself having to copy ALL the perl libraries from /opt/lxr/lib/* tothe root directory...and a whole other copying around...I can't even recall now since it's an entire mess. There was also the problem of ExecCGI on the Debian server - the scripts (source/search/etc) just wouldn't execute...I kept getting: [error] Options ExecCGI is off in this directory/opt/lxr/source I managed to fix this by modifying the .htaccess file to say Options +ExecCGI (adding the + operand). This wasn't necessary on the CentOS server... The current problem for the Debian server is that some files just don't show up. The LXR HTML Header shows up but no source code. What complicates this problem much more is that the same file will open on some browsers and not on others. An strace of apache during the time when a browser sends a request for a file which doesn't display source code is such: [pid 3970] open("/opt/indexed-src/v3.2.1/servers/ext2/open.c", O_RDONLY) = 14 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/fs.h", {st_mode=S_IFREG|0644, st_size=872, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/sys/stat.h", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/sys/stat.h", {st_mode=S_IFREG|0644, st_size=6987, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/sys", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/sys", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/string.h", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/string.h", {st_mode=S_IFREG|0644, st_size=4452, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/minix/com.h", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/minix/com.h", {st_mode=S_IFREG|0644, st_size=51895, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/minix", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/minix", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/buf.h", {st_mode=S_IFREG|0644, st_size=2237, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/inode.h", {st_mode=S_IFREG|0644, st_size=4779, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/super.h", {st_mode=S_IFREG|0644, st_size=6191, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/minix/vfsif.h", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/minix/vfsif.h", {st_mode=S_IFREG|0644, st_size=4142, ...}) = 0 [pid 3970] stat("/opt/indexed-src/v3.2.1/servers/ext2/minix", 0x2b716a75fd90) = -1 ENOENT (No such file or directory) [pid 3970] stat("/opt/indexed-src/v3.2.1/include/minix", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 [pid 3970] --- SIGPIPE (Broken pipe) @ 0 (0) --- It happens every time - the SIGPIPE...I suspect this causes the problem but I am not sure yet where it is coming from. There were/are more problems that I have run into but I am unable to recall them all at present! Oh! There seems to be a problem with the lighthttpd configuration. This is lighttpd v1.4.28 on the Debian server - when I run the lighttpd -t -f lxrconf.d/lighttp-lxrserver.conf command I get the following: 2012-04-18 06:30:00: (configfile.c.964) opening configfile /etc/lighttpd/conf.d/ssi.conf failed: No such file or directory 2012-04-18 06:30:00: (configfile.c.918) source: /opt/lxr/templates/lighttpd/lighttpd-lxr-modules.conf line: 137 pos: 8 parser failed somehow near here: (EOL) 2012-04-18 06:30:00: (configfile.c.918) source: lxrconf.d/lighttp-lxrserver.conf line: 111 pos: 16 parser failed somehow near here: (EOL) - However when I run the same command on my CentOS server I get Syntax OK! Strange...I think when I've figured out all these issues I'd like to try and set this thing up on Nginx...Anyway any potential insight will be very much appreciated! Sorry for the long post! Thanks! |