Уважаемые All!!!!!!
Сталкнулся с такой проблемой
Не выполняюсться скрипты.
Рассказываю:
Есть FreeBSD 4.5 на ней поставил связку Апач+ПхП+Перл+Mysql.
Далее апач собрал с suexec!Все как положенно...т.е. как в школе учили...
но при выполнении скриптов выдает такую ошибку [Thu Dec 12 16:49:56 2002] [error] [client xx.xx.xx.xx] Premature end of script headers: /www/web/cgi-bin/test.plСам test.pl
#!/usr/bin/perl
#test
print "Content-Type: text/html\n\n";
print "Privat\n";Права на выполение поставил.
Где бока не пойму..... в чем проблема....
Уже и все заново переустанавливал.... но не работает....
Может кто подскажет где проблема?
Заранее благодарен!
>Права на выполение поставил.Неправильно поставил права доступа к скрипту или директории cgi-bin, они должны быть недоступны на запись для группы. См. suexec.log - там ясно наипсана причина.
Права доступа все стоят правильно
Вот что пишет Апач в логах suexec_log:
[2002-12-15 15:23:45}: info: (target/actual) uid: (web/web) gid: (hosting/hosting) cmd: test.pl
Что делать?
>[2002-12-15 15:23:45}: info: (target/actual) uid: (web/web) gid: (hosting/hosting) cmd: test.pl
>Что делать?Проверь владельца скрипта и директории cgi-bin на те, что тебе советует в вышеотквоченной строчке suexec.
User и Group в настройках виртульного хоста прописаны, если переименовать suexec - скрипт начинает выполняться, на suexec стоит suid root bit ?
Скрипт точно рабочий ? Content-type правильный выдает ?
>>[2002-12-15 15:23:45}: info: (target/actual) uid: (web/web) gid: (hosting/hosting) cmd: test.pl
>>Что делать?
>
>Проверь владельца скрипта и директории cgi-bin на те, что тебе советует в
>вышеотквоченной строчке suexec.
>User и Group в настройках виртульного хоста прописаны, если переименовать suexec -
>скрипт начинает выполняться, на suexec стоит suid root bit ?
>Скрипт точно рабочий ? Content-type правильный выдает ?Все настройки верны!
стоит suid root bit!
Не работает и все!
Как-то можно проверить правильно ли я настроил suexec?
Проблема может быть в #!/usr/bin/perl - may be wrong path???
>Все настройки верны!
>стоит suid root bit!
>Не работает и все!Если не работает то настройки неверны. Советам ты следовать не хочешь (переименовать suexec в suexec.old), остается прибегнуть к помощи телепатов.
>>Все настройки верны!
>>стоит suid root bit!
>>Не работает и все!
>
>Если не работает то настройки неверны. Советам ты следовать не хочешь (переименовать
>suexec в suexec.old), остается прибегнуть к помощи телепатов.Переименовал suexec в suexec.old! Таже самая картина.... :-(
В логах тоже самое suexec_log не ведеться....
апачь стоит в /usr/local/apache....
а сам сайт лежит /www/web там же /www/web/cgi-bin
suexec настроил на docroot=/www
Может я chroot не настроил? Может быть это с этим связано?
Ну что - решил проблему?У меня тоже самое - и я тоже не могу понять. Я не новичок.
Права файла 755 в cgi-bin, в апаче она ExecCGI
файл:
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello world\n\n";Да что писать:) Он у меня выполняется в шелле ./test.cgi:
Content-type: text/htmlHello world
Но через www не идёт!
>Ну что - решил проблему?
>
>У меня тоже самое - и я тоже не могу понять. Я
>не новичок.
>Права файла 755 в cgi-bin, в апаче она ExecCGI
>файл:
>#!/usr/bin/perl
>print "Content-type: text/html\n\n";
>print "Hello world\n\n";
>
>Да что писать:) Он у меня выполняется в шелле ./test.cgi:
>Content-type: text/html
>
>Hello world
>
>Но через www не идёт!
Он в шеле какраз не должен идти!
добавь; use CGI; !!! перед print'ami
test.cgi:
#!/usr/bin/perl
use CGI;
print "Content-type: text/html\n\n";
print "Hello world\n\n";Всё равно - в шелле работает, в браузере нет! :(
>Он в шеле какраз не должен идти!
>добавь; use CGI; !!! перед print'amiВ шелле работать будет по-любому. И строчка use cgi тут нипричем. Достаточно print "Content-type: text/html\n\n";
Проблема может быть в том, что символ обрыва строк в скрипте виндосовский - 0D0A (если виндовом редакторе скрипт писал), а нужен юниксовый (0A).
Я составлял файл на шеле в юниксе!
100% что там будет юниксовский формат! :)Проблема решилась админом через... ^%$^$
"Disabled suexec.It should be working now.
Thanks!"
Это он про suexec написал - он его вроде выключил (сделал mv в другую директорию) и всё работает... Какая связь - поясните?