forums.meulie.net

Nagios CGI scripts aren't running

I’m currently running FreeBSD 6.0 and have configured and installed Nagios for one host (the server it’s on). I can get to the web interface with all the pretty green dots on the side. The problem is that when I click on the different links, either nothing happens (I hear the IE clicking sound and it says done at the bottom) or I get a download box to download the CGI that is being run. Do you guys know what is causing this? What must I do to get these cgi scripts to run correctly as well as this web interface to work correctly. I appreciate any help you can give.

thanks
Edited ]

Sounds like an apache configuration issue. Did you follow the apache configuration steps in the documentation and restart apache?

[hyperlink url](hyperlink url) nagios.sourceforge.net/docs/1_0/installweb.html

yeah, here are the lines from the script and scriptalias sections of my httpd.conf. I believe everything is in order. What do you think?

# Note that if you include a trailing / on fakename then the server will
# require it to be present in the URL.  So "/icons" isn't aliased in this
# example, only "/icons/".  If the fakename is slash-terminated, then the
# realname must also be slash terminated, and if the fakename omits the
# trailing slash, the realname must also omit it.
#
Alias /icons/ "/usr/local/www/icons/"

<Directory "/usr/local/www/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Alias /nagios /usr/local/share/nagios
<Directory “/usr/local/share/nagios”>
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all

# This Alias will project the on-line documentation tree under /manual/
# epachectl start /usr/local/sbin/apachectl start: httpd startedven if you c

hange the DocumentRoot. Comment it if you don’t want to
# provide access to the on-line documentation.
#
Alias /manual/ “/usr/local/share/doc/apache/”

<Directory "/usr/local/share/doc/apache">
    Options Indexes FollowSymlinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

#
# ScriptAlias: This controls which directories contain server scripts.
# ScriptAliases are essentially the same as Aliases, except that
# documents in the realname directory are treated as applications and
# run by the server when requested rather than as documents sent to the clie

nt.
# The same rules about trailing “/” apply to ScriptAlias directives as to
# Alias.
#
ScriptAlias /cgi-bin/ “/usr/local/www/cgi-bin/”
#
# ScriptAlias: This controls which directories contain server scripts.
# ScriptAliases are essentially the same as Aliases, except that
# documents in the realname directory are treated as applications and
# run by the server when requested rather than as documents sent to the clie
nt.
# The same rules about trailing “/” apply to ScriptAlias directives as to
# Alias.
#
ScriptAlias /cgi-bin/ “/usr/local/www/cgi-bin/”

#
# "/usr/local/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/usr/local/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

ScriptAlias /nagios/cgi-bin/ “/usr/local/share/nagios/cgi-bin/”
<Directory “/usr/local/share/nagios/cgi-bin/”>
AllowOverride AuthConfig
Options ExecCGI
Order allow,deny
Allow from all

Looks good, is apache loading the cgi module?

Somewhere in the httpd.conf you should have:
LoadModule cgi_module modules/mod_cgi.so

And make sure you have the:
AddHandler cgi-script .cgi

Do you have any other cgi scripts on the server you could use to verify if any scripts are working?
Edited Sun Nov 27 2005, 10:37PM ]

The Alias directive you just added for the HTML files must come after the ScriptAlias directive for the CGIs. If it doesn’t, you’ll get a 404 error when attempting to access the CGIs.

This is what the documentation says looks like yours is before…

I have the same problem but running on a debian system. Any suggestions?
ScriptAlias is added before the Alias Directive.
LoadModule and Addhandler remains uncommented.

Yeah, my first guess would’ve been something w/ Apache. I actually have the same problem, but it’s only with my 3D Status Map (statuswrl.cgi). I click the link and it brings up a download page. Can’t figure out what’s up or if its just supposed to be that way. Ive cheched ownership and permissions and they’re identical to all my other cgi’s.

In order for 3d status map to work, your clients must have a 3d viewer and most will not by default. You could search around for one, for your particular web browser.

First, it looks like you have a RPM install. Second, this directory doesn’t look right “/usr/local/share/nagios” How could that be the location of the html files?
I would blow away this rpm install and then do it from source.
PS, turn off your firewall, and it will most likely work.

Edited Fri Dec 09 2005, 09:57AM ]