PeterX wrote:Is it overkill (regarding work hours) to run my own server for that?
It requires a bit experience, but that's the only sane solution for custom webapps. Having your own HW is not cheap and requires expertise, but you can also buy a VM in the cloud for a couple of quid.
PeterX wrote:What is the cheapest technical solution for that?
Get a VM in the cloud with preinstalled Linux. All of the providers (like AWS, Azure, DigitalOcean etc.) provide cheap solutions with preinstalled, bootable Linux images. Once you get maintainer experience then you can install your own Linux, that's the best you can do, however I wouldn't recommend that for a beginner.
The things to be done are:
- buy a VM in the cloud / buy a HW and pay for a hosting provider
- buy a domain name and point it to your VM's IP (this should be cheap, ca. $10-50 per year)
- buy a certificate for your domain name (take a look at Let's Encrypt, that's the cheapest)
- install a very minimal system (or use a preinstalled image)
- install a webserver (apache, nginx etc., usually already part of the preinstalled images)
- install a CGI gateway to connect the webserver with your webapps (for example with nginx and php, use php-fpm; for apache install the appropriate module)
- install your webapps
- security, security, security (install and configure a firewall, keep installed packages up-to-date, remove all components that's not required by your webapp or the system, etc.)
Learning how to install Linux is not difficult. Learning how to install a minimalistic Linux is hard requires deep knowledge on the system (but it is essential to have a performant and secure server). Learning how to configure a webserver and CGI gateway is easy, there are lots of tutorials. The most complicated part is security, you'll need lots and lots of experience with that to get it right.
My advice: forget LAMP, and forget Windows. Use a BSD/Linux and learn how to configure your system. (IIS is a joke from security point of view, just like default LAMP configuration files.)
Cheers,
bzt