Código:
El servidor es de pago pero no es propio es compartido así que no tengo forma de configurar mas.[Wed Feb 13 12:57:42 2013] [error] [client 189.134.121.185] Script timed out before returning headers: Socket.php
Alguna sugerencia de que puede ser lo que pasa, el archivo es un socket que estoy tratando de instalar en el servidor el código por si sirve de algo es el siguiente:
Código PHP:
<?php
/* Permitir que el script permanezca en espera de conexiones. */
set_time_limit(0);
/*socket_create=>Crea y devuelve un recurso socket*/
$socket=socket_create(AF_INET,SOCK_STREAM,0);
socket_set_option($socket, SOL_SOCKET,SO_REUSEADDR, 1);
/*0 - acepta cualquier conexion de cualquier ip*/
$direccion=0;
/*para el puerto no podemos utilizar numeros menores a 1025
/debido a que ya estan reservados para aplicaciones del sistema como correo electronico etc.*/
$puerto=5001;
/*socket_bind=>Vincula el nombre dado en $direccion al socket descrito por $socket.
Esto tiene que ser hecho antes de establecer una conexión
usando socket_connect() o socket_listen().*/
socket_bind($socket, $direccion,$puerto);
/*socket_listen=>Después de que el socket socket haya sido creado usando socket_create()
y vinculado a un nombre con socket_bind(), se le puede indicar
que escuche conexiones entrantes sobre socket.*/
socket_listen($socket);
/*Mientras sea verdadero se ejecuta, quiere decir que
siempre estara a la espera de nuevos clientes*/
$tamaño=2048;
while(1)
{
$cliente=socket_accept($socket);
$buffer=socket_read($cliente, $tamaño); //leemos mensaje del cliente
echo"$buffer";
//$buffer="Saludos, ".$buffer;
include("conexion.php");
// enviamos la consulta a MySQL
$queEmp = mysql_query("SELECT * FROM registro WHERE ID=$buffer", $conexion)or die(mysql_error());
$rsEmp = mysql_fetch_array($queEmp);
$result=$rsEmp['Mensaje'];
socket_write($cliente,$result); //escribimos el buffer
if(buffer==0)
{
break;
}
$arrOpt = array('l_onoff' => 1, 'l_linger' => 1);
socket_set_block($cliente);
socket_set_option($cliente, SOL_SOCKET, SO_LINGER, $arrOpt);
socket_close($cliente); //cerramos cliente
}//socket_close=>cierra el recurso socket dado por $socket
echo "ya sali del while";
$arrOpt = array('l_onoff' => 1, 'l_linger' => 1);
socket_set_block($socket);
socket_set_option($socket, SOL_SOCKET, SO_LINGER, $arrOpt);
socket_close($socket);
?>