Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование *NIX систем > Настройка Apache для CGI


Автор: azesmcar 28.12.2005, 14:19
Здравствуйте.
Пишу CGI скрипт который читает из потока STDIN информацию (т.е. то что было отправлено формой на данный скрипт).
Под виндоуз все отлично работает. Проблемы под линукс. Скрипт абсолютно ничего не получает из STDIN -а. Я так думаю проблема с конфигурацией..
В apache FAQ и manual -е ничего на эту тему не нашел..кто нибудь знает как это исправить?

Автор: bilbobagginz 28.12.2005, 22:33
проверь если у тебя настройки apache в порядке:
проверь что тестовая страница http://server/index.html
отображается нормально.
потом протесть что настройки cgi - в порядке.
для этого запусти какой-то не твой работающий скрипт, на том же языке на котором пишешь.
ТОЛьКО потом посмотри в файлах дневниках апача.

я предполагаю у тебя апач недонастроен.
и пожалуйста избегай выражений 'все работает', 'ничего не работает'
это не информативно. хорошо ?
вообще думаю стоит тебе посмотреть в ссылке о 'правильных вопросах' в правилах http://forum.vingrad.ru/index.php?showtopic=53198

пока.


Автор: azesmcar 29.12.2005, 09:14
Цитата
проверь если у тебя настройки apache в порядке:
проверь что тестовая страница http://server/index.html
отображается нормально.
потом протесть что настройки cgi - в порядке.


Говоря "все работает" я вроде ответил на все твои вопросы..какие еще вопросы есть? пройдемся по очереди...
Цитата
проверь если у тебя настройки apache в порядке:


Что значит в порядке? Еслиб я знал как настроить ВСЕ я бы не делал пост. А если ты о том что они вообще в порядке, то да...апач запускается значит настройки в порядке..
Цитата
проверь что тестовая страница http://server/index.html
отображается нормально.

Разумеется отображается нормально, на этом сервере PHP с Oracle -ом 6-ой месяц пашут..именно CGI работать не хочет...
Цитата
потом протесть что настройки cgi - в порядке.
для этого запусти какой-то не твой работающий скрипт, на том же языке на котором пишешь.
ТОЛьКО потом посмотри в файлах дневниках апача.

Протестировал..CGI работает, данные из STDIN не читает..т.е. выводит на экран то что напишешь...в дневнике не смотрел..сегодня посмотрю завтра отвечу...
Цитата
я предполагаю у тебя апач недонастроен.
и пожалуйста избегай выражений 'все работает', 'ничего не работает'
это не информативно. хорошо ?


Чего тут не информативного? Говоря все в данной теме разумеется подразумеваю проблему. И ни коим образом я не могу иметь ввиду что "работает драйвер моей лан карточки" или что нибудь в этом духе...может стоило по другому сказать? Скажем так...

Под виндоуз с Default настройками CGI из STDIN -а нормально читает...а под линукс с теми же Default настройками не читает...но сам CGI запускается, на экран выводит...больше ничего сказать не могу потому как сам не знаю, могу версию apache выложить и конфигурационные файлы...
Добавлено @ 09:18
Цитата
я предполагаю у тебя апач недонастроен.

Я тоже так предполагаю, вот потому и спрашиваю, есть какая нибудь настройла которую надо изменить чтобы данные отправленные формой направлялись в stdin.

Автор: bilbobagginz 29.12.2005, 12:40
дорогой человек, у тебя все в порядке. это апач просто не настроен. smile

0. Оставь ненужные споры smile и все же прочитай инструкцию по задаванию вопросов в ближайшее время, там очень полезная инфа.
1. Думаю тебе быстрее всего будет просто пошагово пройтись с нуля по документу настройки CGI на сайте апача, смотри свою версию - 1.х или 2.х. Там и по-русски есть инструкции (насколько мне помнится).
3. Я не против тебя, а против апача! сосредоточься на проблеме, пожалуйста.

Еще раз, Удачи.

Автор: azesmcar 29.12.2005, 14:24
Так, начнем сначала...
Я и так знаю что у меня все в порядке...
Цитата
0. Оставь ненужные споры  и все же прочитай инструкцию по задаванию вопросов в ближайшее время, там очень полезная инфа.

Я задал простой и в то же время ясный вопрос..во всяком случае я так предполагаю...Если еще раз его перечитать окажется что там написано
Цитата
В apache FAQ и manual -е ничего на эту тему не нашел..кто нибудь знает как это исправить?

Насколько мне известно форумы существует для того чтобы делиться опытом. т.е. люди которые сталкивались с некоторыми проблемами и решили их помогают тем кто их не решил ее решить...
А именно, если кто-то до этого столкнулся с подобной проблемой и знает какую строку надо исправить в конфигурации чтобы это заработало и мало того что знает еще и имеет желание помочь чтобы другие не ломали голову часами над этим то он помогает..если у вас есть ссылка на эту тему (на эту а не на linux manual потому что в вопросе сказано что об этом там ничего не написано) то буду благодарен информации, если нет то по моему бессмысленно писать о том что и так известно. И чтобы узнать ссылку на документацию по апач мне не обязательно делать пост в форуме...

Версия апач 2.x.x

Автор: bilbobagginz 29.12.2005, 15:37
смотри, я на самом деле пытаюсь тебе помочь. но то как и что здесь проиходит ( отвечается и спрашивается тебе НАПИСАНО в правилах форума.
расскажу о том что я сейчас имею для твоей помощи из приведенных выше информативных сведений:
у человека наверное бежит апач 2.х.х., ( 2.0 или 2.2 ... х.з. )
он предположительно пишет cgi скрипт. неизвестно на каком языке.
жалуется на то, что его скрипт якобы не получает STDIN.
никаких конкретных данных о конфигурации - нет, т.е.:
в какой папке написан сам скрипт ? х.з.
в какой папке разрешен cgi ? х.з.
какие ошибки выдает апач ? х.з.
какие настройки .htaccess стоят ? х.з.

решение усложняется тем, что вопрошающий не выдает военной тайны конкретных данных.
блин. я конечно не самый белый и пушистый, но неужели ты не можешь поспособствовать лечению ?

для начала посмотри error.log и поищи на что плюется апач.
нашел - пиши сюда.
если не нашел... скажи как именно ты пришел к твоим умозаключениям, и апача конфиги в студию.

пока.




Автор: azesmcar 29.12.2005, 16:23
Ну так скажи если тебя конкретно что-то интересует...на мой взгляд большинство заданых тобою вопросов по сути не важны потому что

Цитата
он предположительно пишет cgi скрипт. неизвестно на каком языке.

Не важно на каком языке, на каком бы не писал все равно результат один и тот же. STDIN пуст!
Пишу на С++, компилирую с помощью gcc, но пробовал также Perl и Tcl.
Цитата
никаких конкретных данных о конфигурации - нет, т.е.:
в какой папке написан сам скрипт ? х.з.

Разумеется не в html, в папке cgi-bin, я же говорю что скрипт сам работает. Отсюда можно предположить что с самим cgi-bin ом все в порядке. Скрипт находится в папке /var/www/cgi-bin
Я попробовал дома на линуксе на котором стоит девственно чистая конфигурация apache. Т.е. все по default-у. Ничего не изменено. Тоже самое.
Цитата
в какой папке разрешен cgi ? х.з.

в той в которой находится cgi-script.
Цитата
какие ошибки выдает апач ? х.з.

Ошибок апач не выдает. Сегодня вечером еще раз просмотрю log на всякий случай завтра дам знать о результатах.
А насчет конфигурации все по умолчанию. Тот же апач под виндоуз. Система Linux Fedora Core 3

Если все же нужны настройки апача по умолчанию сегодня вечером пришлю...

Автор: bilbobagginz 29.12.2005, 19:41
давай для начала, и для отмывания от ненужного мусору, выруби selinux ( не помню как точно это делается, думаю найдешь.
потом перезагрузись и посмотри работает ли твой апач со скриптом, и если нет, то посмотри также как увеличить болтливость апача в логах, и посмотри достукиваешься ли ты до него вообще по сети ( может там тебя iptables проглатывает ), т.е. в логах должно быть зарегистрированное подключение к серверу ... ну и т.д.



пока.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)