Now that we've seen how to create Node applications using the Express web framework, let's dig under the covers into the details of HTTP web server implementation. In this chapter, we'll implement a simple web server that supplies a few of the attributes of real web servers discussed in Chapter 4, Variations on a Simple Application.
It's generally best to let the web application framework take care of details, because the HTTP protocol is complex to implement correctly. So why do we want to implement our own HTTP web server? There are several reasons as follows: