У меня есть небольшой скрипт веб-сервера. Если я установил его на «localhost» - тогда я не могу подключиться к этому порту со стороны. Если я установил его в полное доменное имя - тогда я не могу telnet следующим образом: «telnet localhost 7777». Каков правильный способ назвать хост в этом случае?socket надлежащее имя хоста PHP
$host = 'localhost';
$port = 7777;
set_time_limit(0);
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
$result = socket_bind($socket, $host, $port) or die("Could not bind to socket\n");
$result = socket_listen($socket, 3) or die("Could not set up socket listener\n");
while(1)
{
$spawn = socket_accept($socket) or die("Could not accept incoming connection\n");
$input = socket_read($spawn, 1024) or die("Could not read input\n");
while(trim($input)!="")
{
$msg=$msg.$input;
$input = socket_read($spawn, 1024) or die("Could not read input\n");
}
$webserver = new Server($msg);
$output = $webserver->response();
unset($msg);
socket_write($spawn, $output, strlen ($output)) or die("Could not write output\n");
socket_close($spawn);
}
Вы пишете весь веб-сервер в PHP? Как правило, вы используете что-то вроде Apache, nginx и т. Д., Чтобы быть фактическим веб-сервером, а PHP отвечает только за обслуживание контента. – Thanatos