19/02/2010, 10:46
|
| | Fecha de Ingreso: febrero-2010
Mensajes: 1
Antigüedad: 14 años, 10 meses Puntos: 0 | |
Envio de peticion http mediante un socket Tengo un script que envia una peticion con metodo HEAD y lo hace bien pero cuando lo hago por segunda ves no se en via es la misma peticion asi que no veo por que no se me envia deberia.El que me pueda ayudar a descubrir por que pasa esto se lo voy a agradecer el script es el siguiente
<?php
error_reporting(E_ALL);
echo "<h2>Conexión TCP/IP</h2>n";
/* Obtener el puerto para el servicio WWW. */
$puerto_servicio = getservbyname('www', 'tcp');
/* Obtener la direccion IP del host de destino. */
$direccion = gethostbyname('www.example.com');
/* Crear un socket TCP/IP. */
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket < 0) {
echo "socket_create() falló: motivo: " . socket_strerror($socket) . "n";
} else {
echo "OK.n";
}
echo "Intentando una conexión con '$direccion' en el puerto '$puerto_servicio'...";
$resultado = socket_connect($socket, $direccion, $puerto_servicio);
if ($resultado < 0) {
echo "socket_connect() falló.nMotivo: ($resultado) " .
socket_strerror($resultado) . "n";
} else {
echo "OK.n";
}
$entrada = "HEAD / HTTP/1.1rn";
$entrada .= "Host: www.example.comrn";
$entrada .= "Connection: keep-alivernrn";
$salida = '';
echo "Enviando petición HTTP HEAD...";
socket_write($socket, $entrada, strlen($entrada));
echo "OK.n";
echo "Leyendo respuesta:nn";
while ($salida = socket_read($socket, 2048)) {
echo $salida;
}
echo "2da peticion=========";
$entrada = "HEAD / HTTP/1.1rn";
$entrada .= "Host: www.example.comrn";
$entrada .= "Connection: Closernrn";
$salida = '';
echo "Enviando petición HTTP HEAD...";
socket_write($socket, $entrada, strlen($entrada));
echo "OK.n";
echo "Leyendo respuesta:nn";
while ($salida = socket_read($socket, 2048)) {
echo $salida;
}
echo "Cerrando socket...";
socket_close($socket);
echo "OK.nn";
?> |