In this article I present a way to install a simple and basic web server on your home router. I will not show the procedures in detail, I will just list the steps to be followed. My method is based on installing a linux operating system called OpenWRT. If you don't have experience in Linux/UNIX, don't try to install this OS, you will made the router non-functional. More details can be found on the OpenWRT project website [1]. I made three servers with this method, two with Linksys WRT160NL in 2010 and 2015 and one with Linksys EA4500 in 2017. The Linksys brand was sold by Cisco to Belkin in 2013, and the Linksys brand is now owned by Foxconn (Taiwan) as of 2018.
To create a web server for your company, you can use a Web Hosting Provider and buy the service for Web Hosting and Domain Name. For your home, you can use free hosting option for a basic HTML webpage and free dynamic DNS services.
The simplest method of hosting yourself a website on your home is to use a dedicated computer on your own network and apply a port 80 forward on the WAN router. I have used this method at my home for a couple of years with the calculator from link [3]. However, the computer must be kept permanently powered, this means additional costs for electricity consumption and sooner or later the computer it will break.
To install OpenWRT you must follow the next steps:
1. Choose very carefully a compatible router [2]
2. Install OpenWRT for that router. Every router model has his own initial factory install package
3. Change port for LuCI (Lua Control Interface) web interface on µHTTPd to another value, for example 34033
4. Setup network interfaces WiFi, LAN, WAN and firewall, verify internet connection and router functions (figure 5)
5. Install and setup USB packages, connect an USB flash mmory used to store website files (figure 3)
6. Install lighttpd package used for external webserver, will work on port 80
7. Install OpenSSH package (optional) and change port value, for example to 49047 (figure 1)
8. Configure Dynamic DNS service for your Domain Names (figure 2)
9. Configure NTP Client (figure 6)
10. Configure Scheduled Tasks (figure 7)