Wie protokolliere ich ausgehende http-Anfragen von PHP + cURL?

8

Ich habe ein PHP-Skript eingerichtet, das cURL-Anforderungen stellt, wenn eine Aktion auf einer Site ausgeführt wird. Das Problem ist, dass die Informationen bei jeder Ausführung der Aktion zweimal POSTEN.

Ich muss herausfinden, ob dies ein Problem für mich ist (cURL wird zweimal ausgeführt) oder ob die URL, an die gesendet wird, zweimal ausgeführt wird.

Ich kann mir vorstellen, dass der beste Weg, dies zu tun, darin besteht, die ausgehenden http-POST-Anforderungen vom Server anzuzeigen.

Ist das die beste Option? Wenn ja, wie gehe ich vor?

Sam
quelle

Antworten:

10

Sie können tcpdumpdamit einige Pakete auf dem Server abhören:

# tcpdump -vv -s0 tcp port 80 -w /tmp/apache_outgoing.pcap

und führen Sie Ihr PHP-Skript aus, um zu sehen, was passiert.


Gibt es eine Möglichkeit, dies auf a) nur POST-Daten zu beschränken?

Sie können alle http.request.method == POSTin Wireshark schnüffeln und filtern .

b) Nur ab 1.1.1.1

# tcpdump -vv -s0 tcp port 80 and src host 1.1.1.1

und c) nur zu 2.2.2.2 gehen?

# tcpdump -vv -s0 tcp port 80 and dst host 2.2.2.2

Weitere Informationen finden Sie in der tcpdumpManpage .

Quanten
quelle
Danke, das gibt mir viel zu viele Informationen, um sie zu verarbeiten. Gibt es eine Möglichkeit, es auf a) nur POST-Daten, b) nur aus 1.1.1.1 und c) nur auf 2.2.2.2 zu beschränken?
Sam
-1

Besser auf diese Weise filtern

tcpdump src host YOUR-OUTGOING-INterface-IP and dst port 80 or dst port 443
Amir
quelle
Ich bin mir nicht sicher, warum dies so oft abgelehnt wurde. Es brachte mich zu dem, was ich brauchte.
Jisse Reitsma