Ich schicke POST-Requests von unterschiedlichen (eigenen) Servern an
unterschiedliche (fremde) Server. Bei zwei Zielen kommt es seit
kurzem bei Übertragungsversuchen von einer der Quellen aus zu
Fehlern. Diese Quelle (Q2) hat einen deutlich höheren Versionsstand
(curl 7.74.0, openssl 1.1.1k) als die Quelle Q1 (mit curl 7.64.0 und
openssl 1.0.1t), bei der seit Jahr und Tag alles funktioniert.
Ich habe mir einen Testempfänger geschrieben, der mir die
übertragenen Header und Daten ausgibt - die sind bei Q1 und Q2
ident (Hostnamen, Passwort und IP-Adressen geaendert):
#v+
Host: reflektor.domain.example
Authorization: Basic dGVzdDpnZWhlaW0=
User-Agent: some string
Accept: */*
Referer:
https://source.domain.example/
Content-Type: text/xml
Content-Length: 3692
Expect: 100-continue
[3692 Bytes Nutzdaten]
#v-
Q2 erhält als Antwort vom Zielserver einen Code 400 und die folgende
Information:
#v+
Client a.b.c.d:40672 has incomplete request: Estimated length was 3994 byte(s), received 3899 byte(s)
#v-
Zähle ich Header und Body zusammen komme ich auf eine Länge zwischen
den beiden genannten Zahlen... und kurioserweise klappt die
Übertragung, sobald ich bei Q2 den Content-Length Header weglasse
(wiewohl der genau den gleichen Wert enthält, wie bei Q1).
Hat irgendjemand eine Idee, was die Ursache des Problem sein könnte?
Ich kann auch (nahezu) beliebiges zur Informationsbeschaffung
ausprobieren, aber mir sind inzwischen die Ideen ausgegangen. Und
die Betreiber der Zielserver sind leider nur wenig hilfreich :(
Servus,
Stefan
--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike
Stefan muß mehr als Spaß machen!
(Sloganizer)