A HTTP server is a appliance or process that listens for HTTP requests from HTTP clients. After receiving a HTTP request, a HTTP server will reply with a HTTP response. All HTTP responses will include a status code to indicate whether the requested resource is available.
When a resource is available, the server will also include the resource within that HTTP response.
For the most part, static resources can be served without much programming effort. For example, this is how you can configure Nginx to serve files for a static website.
On the other hand, dynamic resources are served by a HTTP server that consists of a programmable portion that describes how to build HTTP responses.