zordon13ru
@zordon13ru

fastcgiqt + nginx

Есть ли у кого нибудь опыт связки fastcgiqt с nginx?
У меня получилось только запуск fastcgiqt приложения как HTTP ( а не -FCGI-TCP или FCGI-UNIX) на порту 9010 и проксировать через proxy_pass:
 server {
                listen 127.0.0.1:80;
                server_name lolhost;
                location /fias {
                        proxy_pass http://127.0.0.1:9010/;
                        proxy_set_header   X-Real-IP $remote_addr;
                        proxy_set_header   Host $http_host;
                        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;

                }
...

но как только в настройках ставлю
 server {
                listen *:80;

location перестает «отвечать» и управление передается в root.
Подскажите пожалуйста, как настроить запуск fastcgiqt все же как fast-cgi а не прокси http, или как настроить nginx чтоб правильно проксировал, кода слушает *:80 а на 127.0.0.1:80
  • Вопрос задан
  • 3446 просмотров
Пригласить эксперта
Ответы на вопрос 5
zordon13ru
@zordon13ru Автор вопроса
Спасибо за помощь. С хостами вроде разобрался.
а вот с fastcgi_pass не получается…
если использовать fastcgi_pass вот какие значения выдает fastcgiqt приложение:

location /fias {
                        fastcgi_pass 127.0.0.1:9010;
                        include fastcgi.conf;
}

при обращении к lolhost/fias/lol
Root URL:
    http://lolhost/fias/lol
Location URL:
    http://lolhost/fias/lol
Full URL:
    http://lolhost/fias/lol? 


Когда я использую proxy_pass
    location /fias {
                        proxy_pass http://127.0.0.1:9010/;
                        proxy_set_header   X-Real-IP $remote_addr;
                        proxy_set_header   Host $http_host;
                        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;  
  }

при обращении lolhost/fias/lol
Root URL:
    http://lolhost
Location URL:
    http://lolhost//lol
Full URL:
    http://lolhost//lol

Во втором случае правильно идет обработка, в первом нет. Могу сделать предположение, что не правильно формируется Root URL
Может кто подскажет как правильно указать fastcgi_param для fastcgi чтоб url-ы формирвались как при proxy_pass из вышеуказанного примера?
Ответ написан
BuriK666
@BuriK666 Куратор тега Nginx
Компьютерный псих
у Вас есть еще секции Server?
server_name lolhost;
Ответ написан
zordon13ru
@zordon13ru Автор вопроса
Да, думаю, надо обратиться непосредственно к разработчику библиотеки fastcgiqt, может он предоставит конфиг…
Ответ написан
Комментировать
zordon13ru
@zordon13ru Автор вопроса
вот посмотер в исходниках как формируется RootUrl
case RootUrl:
                        {
                                const int pathInfoLength = rawValue(ServerData, "PATH_INFO").length();
                                QByteArray basePath = rawValue(ServerData, "REQUEST_URI");
                                basePath.chop(queryStringLength + pathInfoLength);
                                url.setEncodedPath(basePath);
                                break;
                        }
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы