Я пытаюсь понять TCP-соединения между браузером и веб-сервером. У меня есть веб-сервер, работающий на моей локальной машине, и я могу нормально просматривать его, как и ожидалось, используя localhost:3000 или 127.0.0.1:3000. (Я использую «rails s» и WEBrick.)
Я хотел поставить программного посредника между браузером и веб-сервером, поэтому начал экспериментировать с socat. Следующее работает отлично:
socat TCP-LISTEN:8080,fork TCP:localhost:3000
Я могу перейти на localhost: 8080, и все работает, как и ожидалось. Однако, если я опущу аргумент ",fork" таким образом,
socat TCP-LISTEN:8080 TCP:localhost:3000
локальный веб-сайт rails довольно плохо выглядит в браузере.
Зачем нужен этот аргумент fork? Почему браузер ‹--> подключение к веб-серверу не работает без него?