Static site hosting

From OpenHatch wiki

Summary

Many of the sites created by OpenHatch are purely static files. This includes the Campus Outreach site at http://campus.openhatch.org/ and the Boston Python Workshop website at http://bostonpythonworkshop.com/.

So far, we have hosted these sites on the main OpenHatch linode. We're in the process of moving them to NearlyFreeSpeech.NET.

History

On November 19, 2011, the main OpenHatch linode had an outage. This meant that all the sites hosted on it, including these static sites, were down. Jessica McKellar urged us to find a more reliable, well-monitored hosting situation for the Boston Python Workshop.

Rationale for NearlyFreeSpeech.NET

  • They are reliable and security-minded: They have about 2 hours of downtime every 4 years, and they schedule these outages in advance. (So if we want to handle their outages by changing DNS to point at our own server during these short outages.)
  • I would prefer to use some "cloud"-esque thing like Rackspace Cloud Files or Amazon EC2+CloudFront, but none of those services let you point the root of a domain name to them.
    • I feel more comfortable putting our files on a hosting service where we believe the hosting company is big enough to geographically spread its data around multiple data centers. (Perhaps NFS does this as well; I'm not sure.)
  • All these options are super cheap; less than $40/yr for our needs.
  • In general, I strongly prefer to put static sites with hosts that understand how easy it is to serve static sites. NearlyFreeSpeech.NET and Rackspace Cloud Files and others have clear provisions for marking sites as static, which indicates they have a clue.
  • NFS.net can manage DNS for these domains, which minimizes our hassle.

Status

  • Asheesh created an account with Nearly Free Speech.
  • The staticsites shell account has one directory per static site that we generate. Each directory contains an update_and_push.sh script that gets the latest version from git and pushes it to the hosting provider. (Right now, this just covers bostonpythonworkshop.com.)
  • All SSH keys from the deploy account have been copied (on a one-time basis, on 2011-11-26) to the staticsites shell account.
  • The staticsites shell account has enough info + authentication secrets for people to this push to NFS.net to work.

To use:

ssh staticsites@linode.openhatch.org
cd bostonpythonworkshop.com # for example
./update_and_push.sh
  • BPW's site is hosted with NFS.net at a different URL than bostonpythonworkshop.com, as well as bostonpythonworkshop.com.
  • BPW's domain points at NFS.net's DNS servers, which will handle DNS for us.
  • This applies to these other static sites:
    • campus.openhatch.org
    • penn.openhatch.org
    • corp.openhatch.org
    • labs.openhatch.org

How to create a site