подключиь метод POST в Apache
Если ты про ошибку POST is not allowed - это лечится небольшой переконфигурацией апача.
Найди в httpd.conf строчку вида AddHandler cgi-script pl и добавь туда недостающее расширение (например, .cgi).
Также проверь, что скрипт имеет быть право исполненным апачем (часто для этого необходимо задать ему права +х для всех а для скриптовой директории в конфиге апача стоит Options +ExecCGI
AddHandler perl-script .pl .cgiне помогло
кстати, там уже была вот такая строчка AddHandler cgi-script .pl .cgi
Не знаю это одно и тоже или нет...
Вообще выложил бы конфиг апача сюда или мне на почту, я сходу не помню названия параметров, но они там всегда были отлично документированы.
Заодно скажи, на каком языке cgi-скрипт и где лежит по отноошению к www-директории.
<Directory />например, так
Options -Indexes
AllowOverride All
Allow from all
<Limit POST>
Order allow,deny
Allow from all
</Limit>
</Directory>
сменила расширение на zip. на самом деле это .conf
это я пробовала менять, но не помогло. Почему-то кажется, что это немного другое... какие-то разрешения, если метод Post уже подключен...
И не забудь апач рестартануть
Сделай например
<Directory "D:/masha/Web/cgi-bin">
AllowOverride None
Options All
Order allow,deny
Allow from all
</Directory>
Скрипт, кстати, именно там должен лежать.
Выкинь AddHandler perl-script .cgi .pl - если cgi-script есть, дублировать не надо.
И, да, апач рестартовать
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, gznet.ru and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Чем обрабатывается? CRLF-ы подчищены?
З.Ы. По крайней мере, апач понял, что от него хотят запуска скриптов
я проверяю вот на этом
$upload_dir = "/home/mywebsite/htdocs/upload";
?
Винде на CR/LF побарабану, а вот шебенг в начале файла должен быть нормально прописан.
Типа, #!C:/perl/perl.exe
$upload_dir = "d:/masha/web";
это неправильно?
Ты напиши для начала хеллоу-ворлд-скрипт, и добейся того, чтобы он запускался без ошибок.
А насчет "винде по барабану"... Когда я лет 6 назад начинал осваивать перл под виндой, активперлу было как раз по барабану, как записан путь к интерпретатору, ибо путь к нему лежал в реестре.
А вот с CR/LF он матерился мощно
#!d:/masha/perl/bin/perl.exe
#!/usr/bin/perl -w
print<<dat
<html>
<head><title>hello</title></head>
<body><h2>hello</h2></body>
</html>
dat
;
вот на такой скрипт Apache пишет в logs:
[Fri May 18 14:36:34 2007] [error] [client 10.3.8.243] malformed header from script. Bad header=<html>: d:/masha/web/cgi-bin/upload.cgi
print "Content-type: text/html\n\n";
где?
Спасибо всем большое! Все получилось!
имхо, именно по этой причине апач чаще всего выадёт 500ю ошибку при обращении к цги-скрипту.
в общецелом, на пост должон быть лимитэксепт при прочих разных
на скрыпты аллоу в опшинсах, но лучше не в конфе а в папке
плюс вот ты пишешь пост не проходит, проверить в посте ли дело просто, надо гет попробовать(разрешив предварительно само-собой)
если гет не идёт, то смотреть разрешения, они на файлы скриптов должны стоять на исполнение для юзверя апача, о кстати заметил, а это же винда...
ну я не знаю как тогда разрешения ставить...
Оставить комментарий
zakysj50
после поиска в инете сложилось впечатление, что подключить метод POST можно только с помощью установки модуля mod_perl.Это так или есть более легкий способ?