Skip to main content
undefined
undefined

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

undefined

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Deploying static sites

Table of Contents

To push static content to the web, use the Staticfile buildpack. Examples of static content are front-end JavaScript apps and static HTML content.

To set up a “hello world” demo or a more complex static site, see the Cloud Foundry Staticfile buildpack documentation. It includes “hello world” instructions and a full list of configuration options, including how to set up basic authentication and configure nginx (the underlying web server).

Builds

If you are using a static site generator (e.g. Jekyll or Hugo) and/or it requires dependencies to be installed at deploy-time, you should set up continuous deployment. This way, the build happens in your Continuous Integration (CI) system rather than during the deploy itself within Cloud Foundry. This helps to make your deployments more reliable, have a smaller footprint, and reduce downtime.

Jekyll

Deploying a Jekyll site requires a few things:

  • Add or update your Gemfile  to include the jekyll  gem.

    source 'https://rubygems.org'
    gem 'jekyll'
  • Add a Staticfile  pointing to the root of the built site, as specified in the Cloud Foundry Staticfile buildpack documentation.

    root: _site

See 18F/notalone for an example.

Redirect all traffic

If a site moves to a different domain name, you can use cf-redirect to redirect all traffic from the old domain to the new domain.

You can read more about nginx customization at the Staticfile Buildpack documentation.