Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Hello world на C++ и FastCGI на Apache, Модуль не отвечает 
:(
    Опции темы
it_medved
  Дата 13.1.2012, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 1.5.2007
Где: Днепропетровск

Репутация: нет
Всего: 1



Доброго времении суток!

Пытаюсь сделать Hello World программу на C++ под FastCGI и Apache в ОС Ubuntu 10.04.

Модуль mod_fcgi для апача установил, fast cgi sdk library тоже, в IDE Netbeans настроил компилирование с подключением библиотеки libfcgi.so, файл настройки апача для fcgi поменял.

В нетбинсе проект запускается, и пишет Hello World. Если поместить исполняемый файл в папку с сайтом и запустить через браузер - проходит 30 секунд, и timeout exeption (500).

Вот код программы:

Выделить всёкод C++
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
#include <fcgi_stdio.h> /* fcgi library; put it first*/
#include <fcgiapp.h>
#include <cstdlib>
#include <iostream>
using namespace std;
int count;
/*
 * 
 */
int main(int argc, char** argv) {
    
    /* Response loop. */
      while (FCGI_Accept() >= 0)   {
        cout<<"Content-type: text/html\r\n"
               "\r\n"
               "<title>FastCGI Hello! (C, fcgi_stdio library)</title>"
               "<h1>FastCGI Hello! (C, fcgi_stdio library)</h1>"
               "Request number %d running on host <i>%s</i>\n";
      }
    return 0;
}


И еще, может ли кто-нибудь подсказать где найти мануалы от А до Я для FastCGI ? Второй день бьюсь, ничего толкового не нахожу..

Если тему создал не в той теме - модераторы, перенесите пожалуйста куда нужно, более подходящей ветки не нашел.

Это сообщение отредактировал(а) it_medved - 13.1.2012, 13:01
PM MAIL WWW   Вверх
svlary
Дата 14.1.2012, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 8.9.2009

Репутация: 4
Всего: 4



Цитата(it_medved @  13.1.2012,  12:46 Найти цитируемый пост)
проходит 30 секунд, и timeout exeption (500).

 А другие странички (статические, НЕ из cgi-bin) на Вашем сервере видны ? Может вобще сервер не работает ?
PM MAIL   Вверх
it_medved
Дата 18.1.2012, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 1.5.2007
Где: Днепропетровск

Репутация: нет
Всего: 1



Цитата(svlary @ 14.1.2012,  15:50)
Цитата(it_medved @  13.1.2012,  12:46 Найти цитируемый пост)
проходит 30 секунд, и timeout exeption (500).

 А другие странички (статические, НЕ из cgi-bin) на Вашем сервере видны ? Может вобще сервер не работает ?

Да, статический контент + PHP скрипты отдаются..

Может я не правильно компилирую бинарники? 
В отличии от обычной консольной программы - я добавил папку с библиотеками /usr/local/lib 
PM MAIL WWW   Вверх
tzirechnoy
Дата 18.1.2012, 17:49 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: 3
Всего: 16



Хм. FastCGI_Acept, как следует из мана, работает с stdio. А Вы пытаетесь вывести в iostream. Я бы, для начала, попробовал как-то исправить эту несовместность.
PM MAIL   Вверх
it_medved
Дата 18.1.2012, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 1.5.2007
Где: Днепропетровск

Репутация: нет
Всего: 1



Ок, переделал. Компилятор выдает ошибки:
undefined reference to `FCGI_printf'
undefined reference to `FCGI_Accept'
Код:
Выделить всёкод C++
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
#include <fcgi_stdio.h> /* fcgi library; put it first*/
#include <fcgiapp.h>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
int main(int argc, char** argv) {
    /* Response loop. */
      while (FCGI_Accept() >= 0)   {
        printf("Content-type: text/html\r\n"
               "\r\n"
               "<title>FastCGI Hello! (C, fcgi_stdio library)</title>"
               "<h1>FastCGI Hello! (C, fcgi_stdio library)</h1>"
               "Request number %d running on host <i>%s</i>\n");
      }
    return 0;
}

PM MAIL WWW   Вверх
tzirechnoy
Дата 18.1.2012, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: 3
Всего: 16



Скорее всего, в этот раз Вы использовали какую-то другую строку вызова компилятора (например, забыли -lfcgi). Проверить можно вернувшысь к предыдущему варианту и убедившысь, что он точно такжэ не компилируется.
PM MAIL   Вверх
it_medved
Дата 19.1.2012, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 1.5.2007
Где: Днепропетровск

Репутация: нет
Всего: 1



Спасибо, помогло! Теперь в моем браузере гордо красуется надпись "Hello FastCGI"  smile 

Еще вопросик - в библиотеке http://www.fastcgi.com есть готовые методы для взятия GET, POST, COOKIES ?
PM MAIL WWW   Вверх
tzirechnoy
Дата 19.1.2012, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: 3
Всего: 16



Вряд ли. Во всяком случае, если бы я писал -- я бы их не делал.
 Одна из причин -- потому, что таких методов есть в других библиотеках веб-программирования, в количестве достаточном.
PM MAIL   Вверх
it_medved
Дата 19.1.2012, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 1.5.2007
Где: Днепропетровск

Репутация: нет
Всего: 1



Цитата(tzirechnoy @ 19.1.2012,  11:32)
Вряд ли. Во всяком случае, если бы я писал -- я бы их не делал.
 Одна из причин -- потому, что таких методов есть в других библиотеках веб-программирования, в количестве достаточном.

К сожалению, не устраивает скорость работы PHP. Хочу сделать страницу на FastCGI+C++
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0922 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.