Мне нужна помощь от некоторых гуру Linux. Я работаю над веб-приложением, которое включает в себя комет-сервер. Кометный сервер работает на localhost: 8080 и предоставляет URL localhost: 8080 / long_polling для подключения клиентов. Мое веб-приложение работает на localhost: 80.
Я использовал nginx для прокси-запросов от nginx к серверу комет (localhost: 80 / long_polling с прокси на localhost: 8080 / long_polling), однако у меня есть две проблемы с этим решением:
- nginx дает мне время ожидания шлюза 504 через минуту, хотя я изменил КАЖДУЮ настройку одиночного времени ожидания на 600 секунд
- Я действительно не хочу, чтобы nginx в любом случае использовал прокси на комет-сервере - прокси nginx не создан для длительных соединений (возможно, до получаса). Я бы предпочел, чтобы клиенты напрямую подключались к комет-серверу, и пусть комет-сервер справляется с этим.
Так что мой вопрос: есть ли какой-нибудь трюк с Linux, который позволяет мне выставлять localhost: 8080 / long_polling для localhost: 80 / long_polling без использования прокси nginx? Там должно быть что-то. Вот почему я думаю, что лучше всего на этот вопрос может ответить гуру Linux.
Причина, по которой мне нужен / long_polling для доступа к порту 80, заключается в том, что я могу использовать AJAX для подключения к нему (ajax same-origin-policy).
Это мой nginx proxy.conf для справки:
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
send_timeout 600;
proxy_buffering off;