HTTP over AF_UNIX: HTTP-соединение с сокетом Unix

У нас есть HTTP-сервер, для которого у нас есть клиентское приложение HTTP (на Linux), работающее нормально.

Но теперь нам нужно прослушивать доменные сокеты Unix из нашего клиентского приложения. Так можно ли отправлять / получать httprequest, пакет httpresponse из сокета домена unix?

Scenerio1: при подключении к локальному хосту требуется устранить издержки SSL, подключив HTTP к сокету unix вместо HTTPS к локальному порту.

В основном Ищем стандартную кодировку пути сокета unix в HTTP-URL.

Спасибо заранее.

1 ответ

Решение

Пока ваш сокет является потоковым сокетом (SOCK_STREAM скорее, чем SOCK_DGRAM) тогда это технически возможно. В HTTP нет ничего, что требует TCP/IP, просто нужен надежный двунаправленный поток.

Однако я никогда не видел HTTP-клиента, который знает, как подключиться к такому сокету. Я не знаю ни одного формата URL, который бы работал, если вам действительно нужно использовать URL для связи с сервером.

Также обратите внимание, что некоторые вещи, от которых зависят обычные веб-серверы (например, getpeername(), чтобы идентифицировать клиента) не имеет смысла, когда вы не используете TCP/IP.

РЕДАКТИРОВАТЬ Я только что видел ваше редактирование о картировании localhost в сокет UNIX. Это вполне осуществимо, вам просто нужно убедиться, что клиент знает, как найти путь к сокету UNIX, который следует использовать вместо подключения к 127.0.0.1:xxx.

Другие вопросы по тегам