Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a PHP script set up that makes cURL requests whenever an action is performed on a site. The problem is that the information is being POSTed twice whenever the action is run.

I need to work out if this is a problem on my end (cURL is being run twice) or the URL it's POSTing to is doing something twice.

I imagine the best way to do this would be to view the outgoing http POST requests from the server.

Is this the best option? If so, how do I go about it?

share|improve this question
up vote 7 down vote accepted

You can use tcpdump to sniff some packets on the server, something like this:

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

and run your PHP script to see what happens.

Is there any way to restrict it to a) Only POST data,

You can sniff all and filter with http.request.method == POST in Wireshark.

b) Only coming from

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

and c) only going to ?

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

Read the tcpdump's man page for more details.

share|improve this answer
Thanks, this gives me way too much information to process though. Is there any way to restrict it to a) Only POST data, b) Only coming from and c) only going to ? – Sam Sep 2 '11 at 15:15

Better To filter this way

tcpdump src host YOUR-OUTGOING-INterface-IP and dst port 80 or dst port 443
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.