apache: ссылки cgi приводят к «вы решили открыть foo.cgi», хотя scriptalias установлен - PullRequest
1 голос
/ 30 октября 2009

Следуя этому руководству в CentOS 5.2, просто настраивайте nagios в первый раз. Главная страница отображается нормально, но когда я пытаюсь просмотреть любую из страниц, которые должны быть сгенерированы процессом cgi, firefox предлагает мне вместо этого сохранить .cgi, поэтому apache явно не понимает, что ему нужно запустить cgi и получить обратно html от него.

Странно, однако, что, насколько я могу судить, apache должен запускать эти файлы как cgi. nagios.conf:


# SAMPLE CONFIG SNIPPETS FOR APACHE WEB SERVER
# Last Modified: 11-26-2005
#
# This file contains examples of entries that need
# to be incorporated into your Apache web server
# configuration file.  Customize the paths, etc. as
# needed to fit your system.

ScriptAlias /nagios/cgi-bin/ "/usr/lib/nagios/cgi/"


#  SSLRequireSSL
   Options +ExecCGI
   AddHandler cgi-script .cgi
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /etc/nagios/htpasswd.users
   Require valid-user


Alias /nagios "/usr/share/nagios/"


#  SSLRequireSSL
   DirectoryIndex index.php
   Options None
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /etc/nagios/htpasswd.users
   Require valid-use

Либо директива ScriptAlias, либо опция ExecCGI должны вызывать это, но ни одна из них, похоже, не имеет никакого эффекта.

Этот файл конфигурации - это , анализируемый apache, потому что, если я перенесу его из conf.d, / nagios выдаст 404.

Файлы .cgi действительно находятся в каталоге / nagios / cgi-bin /, поэтому я не указал неправильный каталог.

Похоже, что поиск предоставлял только людям, у которых были трудности с разрешениями, что не является проблемой здесь. Мне кажется, это довольно простая вещь, но даже с отличной документацией по apache я немного растерялся (в последнее время слишком часто использую чероки :)).

1 Ответ

0 голосов
/ 03 апреля 2010

убедитесь, что он установлен как исполняемый (я верю), и что у apache есть разрешение на exec, И он знает, как правильно обрабатывать CGI.

также, ваш псевдоним правильный? есть ли что-то в / usr / share / nagios, а также в / usr / lib / nagios / cgi /? (только не так, как я делаю вещи)

...