This adds abstract socket support for Linux, making it possible
to do for example:
server {
listen unix:@abstract-socket;
location / {
content_by_lua_block {
ngx.say("hello from @abstract-socket")
}
}
location /abstract-socket {
content_by_lua_block {
local sock = ngx.socket.tcp()
local ok, err = sock:connect("unix:@abstract-socket")
if not ok then
return ngx.say("could not connect: ", err)
end
ok, err = sock:send("GET /\r\n");
if not ok then
return ngx.say("failed to send data on socket")
end
ngx.say(sock:receive())
}
}
}
echo -en "GET /abstract-socket\r\n" | \
socat abstract-connect:abstract-socket -