Portál AbcLinuxu, 12. května 2025 07:28
potreboval bych z cgi skriptu spustit externi aplikaci, ktera ma za ukol neco vypocitat a ulozit vysledky (vcetne obrazku). z cgi pak tyhle vysledky odeslat v HTML strance. ten program se mi spusti a probehne v pohode, vcetne ulozeni vysledku. Problem je vsak v tom, ze aplikace mi neco posila na vystup a Apache to chce zrejme vlozit do stranky, coz skonci Internal Server Errorem (z error.log Apache -> malformed header from script....). Nevite prosim jak mu vysvetlit, ze cokoliv leze z te externi aplikace ma nechat bez povsimnuti?
diky za kazdou radu, martinpredem se omlouvam za nejednoznacnost, ale je to muj v prvni projektik v tehle oblasti a i jednoduche problemy se mi spatne popisuji. ja bych to rad ignoroval jak pisete, ale nevim jak :) v urcitem miste toho CGI skriptu (v Pythonu) spoustim onu aplikaci jako
os.execv('./applikace','arg1','arg2',...)
a bohuzel netusim, jak tam explicitne vnutit to ignorovani vystupu. kolega v jinem prispevku pise presmerovat vystup do /dev/null, ja to zkousel presmerovat do souboru
os.execv('./applikace','arg1','arg2',...) >> open('temp.txt','w')
, ale bez uspechu :(
echo "Content-type: text/plain; charset=iso-8859-1" echo ...pokud vam jde o vystup one aplikace, doporucuju "zabalit" do nejakeho .sh a na zacatek dat ty dve echa.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.