Usando múltiplos binários FCGI em uma instância lighttpd - possível?

1

Parece-me que será mais fácil manter funções separadas do meu site em binários FCGI separados. O que eu quero é para pedidos como estes:

http://mysite.com/funcA.fcgi
http://mysite.com/funcB.fcgi?action=go

Para ser redirecionado para os arquivos apropriados:

/var/fcgi/funcA.fcgi
/var/fcgi/funcB.fcgi

Então, no meu arquivo lighttpd.conf, eu precisaria de algo assim:

fastcgi.server =
( ".fcgi" =>
  (( "bin-path" => "/var/fcgi",
     "socket" => "tmp/fcgi.sock",
     "check-local" => "disable"
  ))
)

Ou talvez tenha que ser mais assim:

fastcgi.server = 
( "funcA.fcgi" =>
  (( "bin-path" => "/var/fcgi/funcA.fcgi",
     "socket" => "tmp/fcgi.sock",
     "check-local" => "disable"
  ))
),
( "funcB.fcgi" =>
  (( "bin-path" => "/var/fcgi/funcB.fcgi",
     "socket" => "tmp/fcgi.sock",
     "check-local" => "disable"
  ))
)

Ou talvez eu esteja perdendo algo completamente diferente? Eu só consigo o lighttpd iniciar quando há um único binário sendo apontado.

EDIT: Para ter certeza de que estou sendo claro: o que preciso é de uma solicitação como mysite.com/x.fcgi para invocar /var/fcgi/x.fcgi e, da mesma forma, uma solicitação para mysite.com/y.fcgi para invocar /var/fcgi/y.fcgi . Parece que isso deve ser bem direto, mas não consigo uma configuração lighttpd que faça isso acontecer.

Além disso, não estou usando nada interpretado. Estes são binários compilados em C ++ usando o cabeçalho fcgi_stdio.h .

Eu precisaria usar o mod_rewrite?

    
por ACK_stoverflow 23.12.2011 / 16:13

2 respostas

2

Por isso, parece-me que o que eu quero fazer é impossível, ou pelo menos não previsto no FCGI. Quando você invoca www.mydomain.com/thing1.fcgi , não está iniciando thing1.fcgi ; isso já foi feito. O que você está fazendo é enviar uma solicitação para o processo FCGI de execução infinita que você escreve, que quase certamente tem um loop infinito bem no centro dela, aguardando solicitações. Esta é apenas a natureza do FCGI e uma grande distinção do CGI anterior.

Não é uma pergunta difícil de responder, depois de entender como funciona o FCGI. Eu acho que estava apenas desejando.

    
por 05.01.2012 / 22:47
-1

link Isso pode ser feito, vários binários em uma configuração lighttpd.

    
por 29.10.2016 / 18:14