URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 5025
[ Назад ]

Исходное сообщение
"Apache 2.2.4_2 выдаёт Internal server error на CGI"

Отправлено Аноним , 08-Июн-07 17:13 
Пытаю скрипты из дистрибутива, test-cgi и printenv

В httpd-error.log пишет

[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] (22)Invalid argument: exec of '/usr/local/www/apache22/cgi-bin/test-cgi' failed
[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] Premature end of script headers: test-cgi
[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] File does not exist: /usr/local/www/apache22/data/favicon.ico, referer: http://myhost/cgi-bin/test-cgi

Поставил без SUEXEC - не помогло.

Ось фрибзди 6.2

Где копать? В сети много советов об этом, но все о неправильном HTTP-заголовке, но эти скрипты - из дистрибутива. Suexec удалил, Options +ExecCGI добавил. Может кто уже побеждал сей трабл? В стандартном конфиге почти ничего не менял, только включил extra/httpd-ssl.conf и /svn для mod_dav_svn

<Directory "/usr/local/www/apache22/cgi-bin">
    AllowOverride None
    Options None +ExecCGI
    Order allow,deny
    Allow from all
</Directory>


Содержание

Сообщения в этом обсуждении
"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено bruno , 08-Июн-07 23:46 
>Где копать? В сети много советов об этом, но все о неправильном
>HTTP-заголовке,

[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] Premature end of script headers: test-cgi - а это о чем?

Посмотри сам скрипт(test-cgi) может там чего не так, printenv работает?


"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено Аноним , 09-Июн-07 09:22 
>>Где копать? В сети много советов об этом, но все о неправильном
>>HTTP-заголовке,
>
>[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] Premature end of script
>headers: test-cgi - а это о чем?
>
>Посмотри сам скрипт(test-cgi) может там чего не так, printenv работает?


Нет, не работают оба. Эти скрипты ставит дистрибутив, посмотри у себя в cgi-bin и их найдёшь, если не удалял. CGI не могу заставить работать, каких-то настроек не хватает Апачу, или прав, хотя вроде всё стоит правильно, ХЗ чё ей нада


"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено cat , 09-Июн-07 09:28 

>Options None +ExecCGI

Попробуйте без None
Options +ExecCGI


"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено cat , 09-Июн-07 09:29 
chmod +x script_name

"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено Аноним , 09-Июн-07 10:06 
>
>>Options None +ExecCGI
>
>Попробуйте без None
>Options +ExecCGI

спасибо за совет, но ее помогло даже Options All
а права я первым делом установил

-rwxr-xr-x  1 www  www  294 11 дек  2004 printenv
-rwxr-xr-x  1 www  www  294 11 дек  2004 printenv.cgi
-rwxr-xr-x  1 www  www  779 11 дек  2004 test-cgi

думал, может без расширения не понимает - всё равно такая же фигня

[Sat Jun 09 09:54:22 2007] [error] [client 1.1.1.1] (22)Invalid argument: exec of '/usr/local/www/apache22/cgi-bin/printenv.cgi' failed
[Sat Jun 09 09:54:22 2007] [error] [client 1.1.1.1] Premature end of script headers: printenv.cgi

Неужели это только у меня гемморой - я из портов дистрибутив поставил, обычная ось, релиз 6.2.0


"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено sysop , 12-Июн-07 16:25 
>Пытаю скрипты из дистрибутива, test-cgi и printenv
>[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] (22)Invalid argument: exec of
>'/usr/local/www/apache22/cgi-bin/test-cgi' failed
>[Fri Jun 08 16:57:00 2007] [error] [client 111.111.111.111] Premature end of script
>headers: test-cgi


Нашёл грабли: Ошибка исчезла, когда пересобрал индейца с WITH_BERKELEYDB=db42 , сначала собрал с db44, хотел типа как лучше, 4.4.20 посвежее. Всё работало, и Subversion с --fs-type=bdb для которого собственно и предназначался бэкенд. Замечательный секс, 2 дня трахался :D  Причина неясна, но может кто опят наступит


"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено Аноним , 15-Июн-07 15:53 
Началась пляска с бубном: поставил всё то же самое (один в один) на другой машине, на этот раз с WITH_BERKELEYDB=42 (теперь умный!) - та же ошибка

Fri Jun 15 19:42:01 2007] [error] (22)Invalid argument: exec of '/usr/local/www/apache22/cgi-bin/test-cgi' failed
[Fri Jun 15 19:42:01 2007] [error] [client 10.0.0.3] Premature end of script headers: test-cgi

А на первой машине всё работает. Причём грабли именно c berkeley db, без этого бэкенда всё замечательно. Это типа у неё автоматом - 2 дня гемороя сисадмину положено независимо от опыта и версии ПО?! :D


"Apache 2.2.4_2 выдаёт Internal server error на CGI"
Отправлено Андрей , 17-Авг-09 19:38 
>[оверквотинг удален]
>
>Fri Jun 15 19:42:01 2007] [error] (22)Invalid argument: exec of '/usr/local/www/apache22/cgi-bin/test-cgi' failed
>
>[Fri Jun 15 19:42:01 2007] [error] [client 10.0.0.3] Premature end of script
>headers: test-cgi
>
>А на первой машине всё работает. Причём грабли именно c berkeley db,
>без этого бэкенда всё замечательно. Это типа у неё автоматом -
>2 дня гемороя сисадмину положено независимо от опыта и версии ПО?!
>:D

Все гораздо проще

sed -i -e 's/usr\/local\/bin/usr\/bin/' /var/www/localhost/cgi-bin/printenv

или

ln -s /usr/bin/perl /usr/local/bin/perl