Язык C FastCGI с Nginx

Я пытаюсь запустить fastcgi приложение, записанное на языке C позади веб-сервера Nginx. Веб-браузер никогда не заканчивает загружаться, и ответ никогда не завершается. Я не уверен, как приблизиться к нему и отладка. Любое понимание ценилось бы.

Привет мировое приложение было взято с fastcgi.com и упрощено для сходства с этим:

#include "fcgi_stdio.h"
#include <stdlib.h>

int main(void)
{

 while(FCGI_Accept >= 0)
 {
  printf("Content-type: text/html\r\nStatus: 200 OK\r\n\r\n");

 }

  return 0;
}

Выходной исполняемый файл выполняется с любым:

cgi-fcgi - соединитесь 127.0.0.1:9000 a.out

или

-a120.0.0.1-p9000-n./a.out икры-fcgi

Конфигурация Nginx:

server {
        listen   80;
        server_name _;

 location / {
                        # host and port to fastcgi server
                        root   /home/user/www;
                        index  index.html;

                        fastcgi_pass 127.0.0.1:9000;
 }
}
19
задан Arek B. 27 January 2010 в 19:30
поделиться

1 ответ

Вам нужно позвонить fcgi_Accept в , а цикл :

while(FCGI_Accept() >= 0)

У вас есть fcgi_Accept> = 0 в вашем коде. Я думаю, что результаты функции FCGI_ACPECT сравниваются с 0 . Поскольку функция существует, сравнение никогда не ложно, но функция не вызывается.

16
ответ дан 30 November 2019 в 04:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: