Я думаю, вам просто нужно начать это делать.
Мой стартовый сервер:
require 'socket'
server = TCPServer.new '127.0.0.1', 8888
while session = server.accept
session.print "HTTP/1.1 200/OK\r\nContent-type:text/html\r\n\r\n"
if request = session.gets
filename = request.gsub(/GET\ \//, '').gsub(/\ HTTP.*/, '').chomp
filename = "index.html" if filename == ""
session.print "You asked for a file called #{filename}"
end
session.close
end
Конечно, основываясь на имени файла, вы должны попытаться получить файл и отправить его клиенту, возможно что-то вроде:
displayfile = File.open(filename, 'r')
content = displayfile.read()
session.print content
хорошо, если вы хотите учиться, просто начните кодировать и пробовать разные вещи, вы также можете посмотреть исходный код некоторых веб-серверов на github. Но нет смысла размещать здесь их код.
Я только что показал вам действительно основы.