Apache не будет выполнять CGI с Macports Perl5.8.9

Я пытаюсь запустить Perl на моем Macport Apache 2. Я надеюсь, что опытный компьютерщик Perl сможет мне помочь. Я ...

  1. Получил Apache, работающий просто денди. Macports установил его с заполнителем perl5 и perl5.8.9.
  2. Установил mod_perl2.
  3. Запустите сценарий, чтобы настроить httpd.conf.
  4. Перезапустил apache.
  5. Написал следующий тестовый скрипт в htdocs

    #!/opt/local/bin/perl
    print "content-type: text/html \n\n";
    print 'Hello world.';  
    

Все, что я получаю, - это содержимое сценария, распечатанное на экране. Я пропустил шаг? Есть ли какие-то дополнительные настройки в файле .conf?


person Brooks    schedule 10.03.2010    source источник
comment
/opt/local/bin/perl - это расположение двоичного файла perl (или символическая ссылка на него)? Если нет, начните с исправления.   -  person Matt Ball    schedule 10.03.2010
comment
правильный. / opt / local / bin / perl - это место, где macports устанавливает двоичный файл perl (я подтвердил, что он там). Я попробовал / usr / local / bin / perl просто для удовольствия, и, как и ожидалось, это тоже не сработало.   -  person Brooks    schedule 10.03.2010
comment
Теперь я предполагаю, что путь, указанный в первой строке, является абсолютным, а не относительно htdocs или чего-то в этом роде.   -  person Brooks    schedule 10.03.2010


Ответы (1)


Apache не был настроен для распознавания определенных типов файлов как исполняемых файлов cgi. Добавление этой строки в ваш httpd.conf поможет, хотя есть много других способов настроить это для достижения того же эффекта:

AddHandler cgi-script .cgi .pl

Возможно, вам также придется добавить ExecCGI в список опций для вашего домена. Дополнительную информацию см. В Руководстве по Apache: динамическое содержимое с CGI.

person Ether    schedule 10.03.2010
comment
Это сделало это. Я должен твоей кошке чизбургер. Спасибо! - person Brooks; 10.03.2010