I host over 100 websites at home. I also run my own “parked domain ” system on (WordPress multisite) which autopost to Twitter all day long.
Affiliate marketers will be familiar with the difficulty of monetizing web ‘content’ but ignore that hosting may appear cheap with so many apparently “unlimited” web hosting deals. WordPress blogs can be resource intensive, and web hosts are increasingly wise to it. Hog more than a proportion of your host’s server and you will find your account suspended.
My current “bum home web hosting” setup:
Virgin 200Mb broadband (but typically 7-8 Mbps up). Dynamic IP but it doesn’t change often. VM Superhub in “modem mode” with a separate router doing firewalling. An ability to do NAT and port forwarding is required. I’ve only got one public IP of course but you can do wonders being creative with ports to redirect ports 80 and 443 to machines in your home network. Think in terms of your own ‘Amazon cloud’ with its ‘Elastic IP’s’ but at home.
Dropbox Free account. Though a business account (11.99/m) allows 200GB downloads a day
Amazon S3 for a proper CNN though can be complicated for noobs hence why Dropbox.
Cloudflare DNS. Got 10 domains currently hosted on free accounts. Each one got unique IP address so far, though hosted from same point (my home).
Some “low end” VPS’s (for example cheapvps.co.uk) with Nginx acting as a reverse proxy to home hosted servers, and a simple BIND nameserver on some domains.
123-reg Nameservers on some .co.uk and .uk domains. Bind running custom nameservers on some domains with Webmin as a web interface (I’m pretty old skool!). Just to mix things up a bit.
Piwik stats and analytics. No Google here!
Hosting hardware, typically ancient Dell desktop’s (Inspiron’s, Optiplex’s the latter more popular as business desktops). Machines can be picked up from business clearance sites from £40-50 each. A minimum requirement is 4GB of RAM to host 10 or so LXC environments in comfort. Also 64 bit, dual core with Intel’s virtualization CPU extensions (they usually are these days, though not strictly needed for LXC).
My ‘hosting stack’ consisting LEMP (NginX, MariaDB, php-7.0) hosting WordPress multisite) within LXC containers. (Have tried Docker, Vagrant etc but seems to introduce a layer of complication, without too many advantages, but my views may change).
Why LEMP? Apache out of the box can be a memory hog. A typical low-cost VPS have about 128-256 MB RAM which tends to be the bottleneck for these systems. Moving from Apache to Nginx saves a lot of memory and is actually the only logical choice on a low cost VPS. Nginx is also very well supported by WordPress.
So very much a hybrid hosting arrangement, taking advantages of “the cloud” for storage, DNS and proxying to hide my home IP, with basically my home setup taking care of PHP processing and MySQL operations.
Drawbacks. Have to have several machines on all the time (but probably would anyway for Plex etc). Change of IP doesn’t involve a DNS change but a change to Nginx config, which takes effect immediately. Noise may be an issue for some (but not for me). Hence why desktops and not servers which can sound like jet engines at times.
One advantage is that I’m not tied to a web hosts configuration or setup (which might be quite ancient). For example, I can run latest PHP in a test VPS if it suits me (many web hosts are still stuck with PHP5.0 etc).
WordPress can also attract undue attention, but bad bot’s and brute force attacks on wp-admin can be blocked at the Nginx reverse proxy level. Just ‘customising’ the location of wp-login, only allowing local access can dramatically reduce server loads.
Will expand massively on this over time with more detail.
Update: Switched to Amazon S3 storage, since Dropbox changed their linking protocols and broke all my sites!