I host a few personal and low-traffic websites from my home on an old Raspberry Pi 2b. The computer sits in the same closet that has my incoming internet connection router and home network router. The server sits outside of the home network and is connected to the internet router via ethernet. Through my ISP, I have a block of static IPs I can use. One of these IPs is assigned to the server.

Raspberry Pi Server
Raspberry Pi Server [high res version]

On the server I run nginx to host the static sites, and (now unsupported) certbot-auto to create/renew security certificates from Let's Encrypt so that the sites are provided over https. A cron job runs the renewal feature once a month, however the certificates last over 80 days.

So far I found this extremely cheap (re-used hardware) and simple setup to be more than enough for my static hosting needs. Purchasing static IPs is the main cost here, which I find value in for a few reasons: