web hosting
Web hosting can be the primary regular cost in maintaining an IndieWeb site; this page lists several options from free on up depending on your publishing needs, like a static, shared, private, or dedicated server.
Typical for-pay hosting services more expensive than most domain name registrations/renewals. Web hosting services serve web pages on a domain of your choice.
Contents |
Criteria
Hosting providers aren't one size fits all. Picking one is in some ways like picking a cell phone provider. There are lots of factors that determine whether a given provider is right for you personally. etc. Here are some questions you'll want to think about to get started.
- How much code do you want to write: none, some, lots?
- How much are you willing to pay? Nothing, a little, or more?
- Do you want individualized customer support?
- Do you need any guarantees on availability, e.g. an SLA?
- How much risk tolerance and security expertise? Will you keep up with patches, etc?
- If you're technical, do you need a shell account? Do you need root?
See hostingnotes for some unstructured notes on the offerings of specific providers (in early 2014).
Services by Type
Here are various levels of web hosting service available from different providers, roughly ordered from easiest/cheapest/friendliest to most powerful/technical.
Custom domain silos
Some silos allow you to configure your profile to use your own domain name, thus at least giving you some ownership over your permalinks (that you can potentially transfer to your own web host later) and are thus worth considering as a content hosting service.
- Tumblr (free): instructions
- Squarespace (starts at $8/mo): instructions
- Blogger (free): instructions
Tumblr is listed first (and preferred) over Blogger because:
- Tumblr has much more beautiful, usable, mobile friendly default templates
- Tumblr has a much friendlier posting and admin interface
- Tumblr has many more posting options (web, mobile apps, email, instant messaging)
- Tumblr appears to be better maintained (Yahoo purchased in 2013, appears to be supportive), whereas Blogger appears to be barely maintained by parent Google.
- Tumblr automatically supports user-centric site icons (your profile icon/avatar is automatically hosted as your personal site icon.
In many ways, Tumblr's ease of setup, ease of use, ease of customization, and "pretty by default" appearance set a high bar for any indieweb project or solution to meet.
Advantages of custom domain silos:
- Zero maintenance. No software or servers for you to maintain or update (e.g. security updates).
Disadvantages:
- Choice of configuration typically limited to templates
- Terms of service may limit your options for monetizing your site.
- Maintaining URL permalinks may be challenging when you switch to another (more self-owned / self-run) solution.
Hosted CMS Software as Service
Some open source software is hosted on various domains and can be set up to serve your personal domain for you.
- Known (free): [1]
- Wordpress.com (small fee): instructions
- WP Engine (fee): instructions
- IndieHosters (fee): [2]
Advantages of hosted CMS software:
- Regular security updates
- Easier migration from hosted to your own web server / VPS (as compared to silos above).
Disadvantages:
- Choice of software platform typically limited to plug-ins and perhaps javascript.
- Terms of service may limit your options for monetizing your site.
Static domain hosting
Simpler and more portable to a dynamic content web hosting solution, static hosted domain solutions are (likely) even more reliable while still be free or very cheap:
File hosting services which provide serving static files over HTTP
Advantages of static hosting:
- Very cheap. (See Date Edge's usage/billing)
- ...
Disadvantages:
- Complicated to set up.
- ...
Dropbox
- Dropbox (free)
- See the main article for guides and services that help host a small static site on Dropbox.
GitHub Pages
- GitHub Pages (free) - GitHub Pages is designed for hosting simple static web pages. In addition to github's instructions, there are several guides on how to use GitHub Pages to host your website:
- Based on Jekyll
- http://opentechschool.github.io/social-coding/extras/github-pages.html
- Example: BootStrap blog powered by Jekyll and Github pages
- An advantage to using a Github based solution is that you can easily transfer it to another web host simply by deploying from github to your web host.
Amazon S3
- Amazon S3 (very cheap): instructions (via [3]).
Google Drive
- Google Drive (free)
- Static HTML files can be published to the web using Google Drive (https://support.google.com/drive/answer/2881970?hl=en)
- Useful alongside scripting for things like a Twitter archive that updates with latest tweets (see Twitter Archive Google Spreadsheet)
- This service is shutting down web hosting on August 31, 2016. As an alternative you can use Cloud Storage which is part of Google Cloud Platform.
IndieWeb static hosting users
IndieWeb community members using this approach:
- Aral Balkan (UK 2012-2013) [4] (S3)
- Leonardo Zangrando lionzan.me (S3)
- ...
FTP access with PHP or Perl CGI in a shared hosting environment
- Dreamhost
- Empowering Media
- Krystal UK Based, very good shared servers with incredible support. They have packages for both beginners and large companies alike.
- Pair has been around forever, has lots of reasonable plans, and is generally very clueful.
- freeshell.org aka the SDF Public Access UNIX System
- Webfaction has lots of plans, supported languages and databases; runs Apache/ngnix.
- a small orange has nice shared hosting starting at 250MB for $35/year. Good customer support. Kylewm.com has had good experiences with them in the past.
- ...
Other opinions: HostJury is a crowd-sourced web host review service, though whether the crowd is sufficiently large and diverse to reduce the bias to a useful level is unclear.
Advantages of shared hosting:
- no ads or other items on your page
- Zero OS/LAMP maintenance. Shared hosting services will automatically handle updating your server's operating system, HTTP server, language support (e.g. PHP).
- Ability to install your own backend scripts (e.g. PHP) to run your website
- ...
Disadvantages:
- Little to no choice of HTTP software. Typical shared hosts require you to use whatever HTTP server they maintain, e.g. Apache, Lightspeed HTTP, etc. HTTP server software then becomes another factor in how you pick a shared hosting provider.
- Fixed bandwidth/storage limits (typically)
- Very little configuration control, eg of domain setup
- Usually no ability to use newer technologies like websockets
- Unless you're relatively technical, apps are installed through stores like Installatron that are themselves silos
- ...
IndieWeb community members using this approach:
- Tantek Çelik with tantek.com running Falcon (CASSIS/PHP) on Empowering Media
- Ryan Barrett with snarfed.org running WordPress on Pair
- Kartik Prabhu with kartikprabhu.com running Django (based on Python) on Webfaction
- Colin Tedford with colintedford.com running WordPress on Dreamhost since 2005
- npdoty.name with several static, PHP and Node.js sites on Webfaction
- ...
Platform as Service
High-level language-specific runtime environment
Advantages of Platform as Service:
- ...
Disadvantages:
- ...
IndieWeb community members using this approach:
- Ryan Barrett with Bridgy on App Engine
- ...
Virtual Private Server
Virtual Private Server (VPS) is a hosting model where you get root access to a virtual system and can install whatever you want
- Bytemark (UK)
- Flosoft (DE)
- Hosteurope (DE)
- Used by cweiske
- Linode
- Gandi provides simple pre configured virtual machines with PHP / NodeJS / MySQL / PgSQL / MongoDB starting 5$ a month. Servers are both in Europe and in the USA.
- Digital Ocean is similar to Linode, but $5/mo.
- Atlantic.net is similar to DigitalOcean and Linode, but offers a "GO" plan for $0.99 a month.
- Pair (see above)
- Google Compute Engine
- Amazon AWS
- Rackspace
- Prgrmr
- Used by tommorris.org
- LowEndBox is a site for reviews/offers of inexpensive VPS services from various companies. Your mileage may vary.
Advantages of a VPS:
- full control over software stack
- being able to run as many tools as needed or required
Disadvantages:
- all maintenance is your responsibility
- must be comfortable as a sysadmin
IndieWeb community members using this approach:
- aaronpk
- Kyle Mahan runs Python/Flask on a Digital Ocean VPS
- cweiske
Dedicated Server
A discrete, physical server, on a rack or otherwise, which you get full access to, can optionally upgrade (for an additional monthly fee if the server is rented), and install whatever you want.
- Bytemark (UK)
- Flosoft (DE)
- Used by Bear
- Kimsufi provides low cost dedicated servers in several datacenters across the world.
- Rackspace
- ServerBeach
- SoftLayer
- Used by Ben Werdmuller
- Hetzner (Germany)
- Used by Peter Molnar and Shane Hudson
- they have "remarketed" servers offer for a very nice price Hetzner Online Server Auction
Advantages of a server:
- Full control (as VPS) and speed; no need to share resources beyond bandwidth
- large disk space could be used for online backup and server could be a host for a group of sites/peole
Disadvantages:
- Price (although depending on load they can be more cost effective than a VPS)
- See VPS
IndieWeb community members using this approach:
- Ben Werdmuller
- Bear
- Peter Molnar
- Shane Hudson (In process of migration)
Personal Clouds
Personal Clouds / Home Hosting is a new type of hosting is starting to emerge largely in part due to the Raspberry Pi and other similar devices. All said devices are small single-board computers with a CPU, RAM, GPU, and USB ports that offer some form of disk storage. One can usually purchase one of these devices for under $100 or slightly over.
There are many projects under development that make installing of server side software on personal clouds as easy as installing apps on a mobile device.
- Indie Box
- UBOS
- Sandstorm
- ArkOS
- Cloud Fleet
- Cozy
- Tiki Suite
- PageKite
- More projects exists, please add them...
domain for a home server
Running a server from a home or office requires either a static IP address purchased from an ISP, as well custom router settings (if using a router). There are however approaches around this problem that routes through the NAT and firewall through methods like reverse proxying.
An alternative approach is to use Digital Ocean as DNS provider for your domain: since they offer this for free and they have an API, you can update the domain with your current IP. This may still be an issue due to potential frequent chances, but it can work.
Example script to be run from cron:
#!/bin/bash domain_id="DIGITAL OCEAN DNS DOMAIN ID" record_id="DIGITAL OCEAN DNS ENTRY ID" client_id="DIGITAL OCEAN CLIENT ID" api_key="DIGITAL OCEAN API KEY" ip=`wget -q -O- http://ipecho.net/plain` api="https://api.digitalocean.com/domains/${domain_id}/records/${record_id}/edit?data=${ip}&client_id=${client_id}&api_key=${api_key}" response=`wget -q -O- ${api}` echo ${response}
See the Digital Ocean Legacy API documentation for all details. v2 version is not done yet.
To get the domain & dns entry ID and obtain cliend id & keys:
- generate access key & client ID at [5]
- to read the json entry and get the domain id go to [6]
- to get the entry id, go to https://api.digitalocean.com/v1/domains/(domain_id)/records?client_id=(client_ID)&api_key=(api_key)]
NOTE: Do not use your home address as email sending server; for receiving, it's ok, but sending will have issues connecting to properly configured setups due to missing/problematic reverse DNS and FQDN. You do need a proper static IP and reverse DNS configured to send emails without issues.
Articles
Articles about web hosting recommendations, problems, challenges. Newest first.
- 2014-03-27 Brent Simmons: What Did I Just Learn?
- 2014-03-27 Brent Simmons: On Running Your Own Servers, and Why We’re Not
- 2013-02-01 Kathy E. Gill: Mini-rant: Web hosting company set up policies
- mentions AcornHost, Dreamhost, FatCow, MediaTemple
- 2012-05-20 Lifehacker: Five Best Web Hosting Companies
- mentions A Small Orange, Bluehost, Dreamhost, HostGator, InMotion Hosting, Linode, NearlyFreeSpeech, Rackspace
- 2010-05-23 Lifehacker: Five Best Personal Web Hosts]
- mentions: 1&1, Bluehost, Dreamhost, HostGator, NearlyFreeSpeech
- ...
FAQ
Is using 3rd party hosting still indieweb
Q: If you use one of the 3rd party hosting options above (i.e. everything except for home hosting), you are still hosting your content on a webserver which is controlled by a third party, which thus could control your data. How is a setup where a 3rd party could control your server and data still indieweb?
A: Since it's the indie*web*, not indie everything, the important part is to own your web identity, which basically means owning the URLs. As long as you control the URLs, you can move between backend providers as you wish. You are in control of your online identity if you own the URLs.