Perl не работает - PullRequest
       14

Perl не работает

0 голосов
/ 09 ноября 2011

У меня был опыт настройки нескольких Perl-программ на Mac, но сегодня я попал в странную ситуацию.

Я удаляю одну из моих существующих папок Perl и загружаю ее из GitHub, когда я пытаюсь запустить ее снова, она показывает эту ошибку: [произошла ошибка при обработке этой директивы].

Итак, что я делаю для отладки:

1) Я создаю test.shtml (некоторые проблемы с отображением знака стрелки здесь)

#exec cgi="/Users/lion/htdocs/app/cgi-bin/test.pl"-->

2) Я создаю test.pl

#!/usr/bin/perl
print "content-type: text/html \n\n";
print "test";

3) Я создаю новый htaccess

AddType text/html .shtml
AddHandler server-parsed .shtml

4) Я установил разрешение test.pl на 777

5) Я тестировал с http://app.local/test.shtml -> ошибка выхода [при обработке этой директивы произошла ошибка].

6) Если я вручную запускаю с консоли, все работает нормально.

Вот мой конфиг apache.

<VirtualHost *:80>
    DocumentRoot "/Users/lion/htdocs/app"
    ServerName app.local
    ScriptAlias /cgi-bin/ "/Users/lion/htdocs/app/cgi-bin/" 
</VirtualHost>

Мой журнал ошибок apache показывает это:

[Wed Nov 09 16:45:25 2011] [error] [client 127.0.0.1] invalid CGI ref "/Users/lion/htdocs/app/cgi-bin/test.pl" in /Users/lion/htdocs/app/test.shtml

Не уверен, что я пропустил, моя другая программа на Perl работает нормально. Не хватает идей, которые вызывают проблемы.

Ответы [ 2 ]

3 голосов
/ 09 ноября 2011

exec cgi ожидает URL-путь , а не путь файловой системы в качестве аргумента.

Попробуйте

#exec cgi="/cgi-bin/test.pl"

или просто

#exec cgi="test.pl"
0 голосов
/ 10 ноября 2011

Что ж, потратив некоторое время на отладку, выяснил, что причиной является .htaccess с аутентификацией в cgi-bin, он блокирует перенаправление.

...