Как запустить несколько fcgi программ для прослушивания одного порта
Установлен nginx, libfcgi, spawn-fcgi.
Создал 2 fcgi программы генерирующие веб-страницу. Программы работают, nginx перенаправляет запрос программе.
Я же хочу запускать несколько fcgi программ, но может работать только одна, что странно. 1 веб страница = 1 fcgi программа.
Запускаю так:
#!/bin/bash
cur_dir=$(pwd)
spawn-fcgi -p 8000 $cur_dir/fcgi/main.fcgi
spawn-fcgi -p 8000 $cur_dir/fcgi/main2.fcgi
$SHELL
Вывод:
spawn-fcgi: child spawned successfully: PID: 18757
spawn-fcgi: bind failed: Address already in use
jordan@jordan-aspirea31523:~/Desktop/web_cpp$
Как запустить несколько fcgi программ?
Ответы (1 шт):
Для TCP вы не можете повесить больше одной программы на порт. Как вы и указали выше, только 1 порт - 1 программа.
Но вы можете создать главный процесс, который слушает желаемый вами порт и в зависимости от запросов уже разделяет их.
Или как написал товарищ @nörbörnën,
пускай слушают разные порты, а задачи между ними распределяет nginx через upstream