Общие > Веб Сервера
#exec cgi не работает, хотя остальные SSI\'ные директивы работают
Gurvinek:
Итак, что есть:
Win 2000 Prof, Active Perl 5.6, IIS. SSI подключён.
Не работает директива #exec cgi, хотя остальные SSI\'ные директивы работают - та же #include и пр. В общем ВСЕ, кроме #exec. Т.е. возможно, что и #exec срабатывает и выполняет скрипт, но просто результат его работы не выводится... Не знаю.
Вот как всё выглядит (простейший тестовый сайт).
index.shtml:
--- Код: ---
Test CGI
--- Конец кода ---
test.cgi:
--- Код: ---
#!D:\\Perl\\bin
print "Content-type: text/html\\n\\n";
print "test \\n\\n";
--- Конец кода ---
По ссылке Test CGI скрипт срабатывает, выдаёт на экран то, что должен, а вот в том месте, где #exec - ничего не показывает.
Где тут грабли? Может в настройках Perl\'а что не так?
MadDog:
А путь до скрипта в SSI\'ной конструкции указан правильно? Т.е. скрипт, что лежит не в директории cgi-bin?
Gurvinek:
To MadDog
Скрипт лежит вместе с html\'кой. Впрочем, я пробовал класть его в cgi-bin (уж чего я только не пробовал) - не помогло.
Serchey:
Скрипт пусть лежит в cgi-bin, а в опциях директории, где лежит index.shtml пропиши +Includes. Не забудь также прописать
AddType text/html .shtml
AddHandler server-parsed .shtml
grozny:
а если IIS - то надо еще посмотреть до настроек более пристально. Скрипт должен лежать в директории для скриптов, cgi-bin. Если ты хочешь повалять там обычные htm-файлы, будь бдителен :) - а то сервер начнет их обрабатывать как скрипты
пример:
|
|- www
|- cgi-bin
<!--#exec cgi="cgi-bin/test.pl" -->
путь указывай точнее. Пробуй include virtual. Если не сработает, или начнет вести текст скрипта, копай настройки сервера.
Навигация
Перейти к полной версии