Carl Youngblood
9/30/2003 5:36:00 PM
> so, when any program runs that requires ''fcgi.so'', it, in turn, will cause the
> linker to look for all the other libs it needs. sometimes the paths will be
> incomplete and the linker will need to look for the others in LD_LIBRARY_PATH
> or /etc/ld.so.conf. it can happen (it has to me) that a module _you_ require
> works completely find because the directory of the libs _it_ depends on are in
> your LD_LIBRARY_PATH and ld.so can find them. however, when you are running a
> cgi it is user nobody that is running the script and his LD_LIBRARY_PATH may
> not have a path where the depending lib can be found. i think i saw this with
> the postgres module before... any how, you can fix it by configuring ld.so
> (/etc/ld.so.conf) _or_ by compiling with LD_RUN_PATH set, which hard codes the
> paths into the shared module. or by setting the global LD_LIBRARY_PATH but i
> forget how to do that.
Okay, so I updated /etc/ls.so.conf and even figured out that I needed to
run /sbin/ldconfig in order to update my changes. I also restarted the
httpd daemon just to make sure that it got those changes as well.
However, I''m still seeing the problem:
> [Tue Sep 30 11:26:21 2003] [crit] (13)Permission denied: FastCGI: can''t create (dynamic) server "/var/www/cgi-bin/test.fcgi": bind() failed [/etc/httpd/logs/fastcgi/dynamic/35830e69d0669b031643022d74f2d729]
> [Tue Sep 30 11:26:26 2003] [alert] [client 127.0.0.1] (13)Permission denied: FastCGI: failed to connect to (dynamic) server "/var/www/cgi-bin/test.fcgi": something is seriously wrong, any chance the socket/named_pipe directory was removed?, see the FastCgiIpcDir directive
It may be, as you said, that the web server user (apparently redhat sets
up a user called apache for the web server to run as) can''t see the
same library path that I can. However, I can''t check since when run:
sudo su apache -c ''/var/www/cgi-bin/test.fcgi < /dev/null''
It says "This account currently is not available." What''s more, even
though my user could not see /usr/local/lib in its library path, it was
able to run the fcgi script from the command line, since ruby-fcgi seems
to bypass fcgi.so when it is running from the command line.
So, I think I am closer but there is still a problem.
Thanks,
Carl