I'm having this weird issue. With a cgi-script I wrote this perl script that uses IO::Socket::SSL or IO::Socket::INET depending on if I access a http or https url.
With this script I POST information to another script. The information posted is quite big sometimes, 4,8 sometimes 16k, so GET is out of the question.
My script works fine when I post the informationto a perl script. But then the target script at the other end is a .php script, the .php script receives nothing, I mean it does not receive the variables nor the values.
What could I be missing?
Basically what the script does (in http cases ) is :
- open a socket to host:80
- then send the following headers :
POST $CgiName HTTP/1.0
Host: $HostName
Content-Type: text/xml; charset=utf-8
Content-Length: $Length\n";
$Data
<the wait for answer or timemout>
For https, its basically the same thing instead I open the socket with IO::Socket::SSL.
The data is in this form :
var1=val1&var2=val2&var3=val3
Any ideas?
BlakMonk
[edited by: jatar_k at 8:54 pm (utc) on May 31, 2004]
[edit reason] removed url [/edit]
Is it possible that the server running the php script is blocking posts from your script (either by IP or some value included in the form data)? If you have access to that server, a look at the error logs may help also.