Я пытаюсь понять 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
веб-сайт местных рельсов совершенно не работает, если смотреть в браузере.
Зачем нужен этот аргумент fork? Почему не работает браузер <-> подключение к веб-серверу без него?