Apacheが新たに再起動された場合、最初のいくつかのSUBMITSは問題ありません。しかし、いくつかのテストの後、 "v"の壊れたバージョンを印刷し始めます。Apache:いくつかのPOST後にコンテンツが破損する
int main() {
while (FCGI_Accept() >= 0) {
printf("Content-Type: text/html;\n\n");
int content_len;
content_len = atoi(getenv("CONTENT_LENGTH"));
char v[100];
fread(v,content_len,1,stdin);
printf("%s",v);
FCGI_Finish();
}
return 0;
}
更新:おそらく私は「無料(v)」にする必要があります。 ?使用したメモリなどをリセットします。明らかに、それはどこかに保存されています...そしてそれは空にする必要があります。
おそらくこれはhttpd.confの自分のfcgi設定と関係がありますか?
「content_len」は100未満ですか? – Barmar
これは、以前の送信からの値を出力することがあります。 –
いいえ、あなたは 'v'を解放する必要はありません。実際はそうしてはいけません。 'free()'は、動的に割り当てられたメモリブロックの先頭へのポインタにのみ適用されなければなりません。 –