Попытка заставить fastcgi работать в nginx и c ++ - PullRequest
0 голосов
/ 14 января 2012

Ниже мой код на c ++ и мой файл конфигурации.

когда я бегу spawn-fcgi -a120.0.0.1 -p9000 -n ./rtb.o

Я получаю эту ошибку

spawn-fcgi: exec failed: Exec format error

Вот мой код на C ++, который я собрал как rtb.o

#include "fcgi_stdio.h"
#include <stdlib.h>
using namespace std;
int main()
  {
      int count = 1;
      while(FCGI_Accept() >= 0)
          printf("Content-type: text/html\r\n"
                 "\r\n"
                 "<title>FastCGI Hello!</title>"
                 "<h1>FastCGI Hello!</h1>"
                 "Request number %d running on host \n",
                  ++count);
      return 0;
  }

Итак, что я сделал не так?

1 Ответ

0 голосов
/ 14 января 2012

Вы пытаетесь запустить программу с именем rtb.o? Это объектный файл или исполняемый файл? Возможно, вы захотите показать нам, как вы собираете свою программу. Если вы делаете что-то вроде

g++ -c rtb.cpp

Затем вы получите объектный файл, и вам нужно связать его, чтобы получить работающую программу. Попробуйте запустить его с вашего терминала, используя ./rtb.o. Если он печатает то же сообщение, значит, у вас есть объектный файл, и вам нужно попробовать что-то вроде этого:

g++ -o rtb rtb.cpp

Не забудьте добавить ссылку на библиотеку FCGI при ссылке (используйте опцию -l).

...