Portál AbcLinuxu, 9. května 2025 19:23
Zdravim,
mam ponekud priblbly dotaz: mam v "C" s dopomoci FCGI knihoven napsany jednoduchy FastCGI programek, ktery provozuji s lighttpd a vse funguje zhruba tak, jak ocekavam.
Bohuzel nyni potrebuji v nekterych pripadech timto "programkem" odpovedet 404. A zatim jsem neprisel na to, jak se googlu spravne zeptat
BTW: Ze zoufalstvi jsem zkousel neco jako:
FCGX_FPrintF(out, "HTTP/1.1 404 Not Found");
Ale lighty stale posila 200 OK...
Za jakekoliv k cili vedouci nakopnuti bych byl velmi vdecen
Hezky den!
kokoska.rokoska
FastCGI applications set response status using the Status and Location CGI headers.
Zkus nastavit hlavičku Status: 404 Not Found
.
Mimochodem, dokumentace FastCGI je nic moc a vůbec celé FastCGI je takové nějaké podivné, osobně nechápu jak se to mohlo ujmout
Diky moc za odpoved, pane kolego Messo!
Neco takoveho tez tusim, ale nevim jak zaslat/nastavit/zmenit http hlavicku
Pokus:
FCGX_FPrintF(out, "Status: 404 Not Found\r\n");
k cili nevede (a vynechani r\n take nic neresi)...
Mohl bys mi, prosim, jeste trochu napovedet?
BTW: Ze dokumentace k FastCGI neni "nic moc" si myslim tez, ale kdyz potrebuji "za kazdou cenu" maximalizovat pocet odbavenych requestu za sekundu, tak mi asi nic jineho nezbyva
Hezky den!
kokoska.rokoska
Zajímavé, mě to funguje: http://fcgipokus.messa.cz/ (zkus tu adresu zadat třeba sem, uvidíš HTTP status)
Použil jsem příklad http://www.fastcgi.com/devkit/examples/echo-x.c a upravil jsem ho takto:
--- echo-x.c +++ moje.c @@ -50,6 +50,7 @@ int len = 0; FCGX_FPrintF(out, + "Status: 404 Not Found\r\n" "Content-type: text/html\r\n" "\r\n" "<title>FastCGI echo (fcgiapp version)"
Pak už jenom...
$ gcc -o moje -lfcgi moje.c
Nastavení lighttpd:
$HTTP["host"] == "fcgipokus.messa.cz" { fastcgi.server = ( "/" => (( "host" => "127.0.0.1", "port" => 22222, "bin-path" => "/.../moje", )) ) }
Jasne, ze to funguje, pane kolego Messo!
A me by to fungovalo taky, kdybych nebyl pako, ktere si "sachovanim" s pointry nakopirovalo nejaky bordel do vystupniho bufferu
Takze lighty celkem opravnene pred to vsechno "predradil" 200 OK...
Dekuji Ti, pane kolego Messo, za pomoc a vsem se omlouvam za vlastni pitomost.
Hezky den!
kokoska.rokoska
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.