microchipNGINX Setup (Subfolder Routing)

Once you have multiple Ghost installs, your server needs to route:

  • / → English Ghost

  • /hi/ → Hindi Ghost

  • /es/ → Spanish Ghost

Crimson uses NGINX “location blocks” so that each path proxies to the correct Ghost instance/port.

Where you edit

Crimson notes you’ll see files in:

/etc/nginx/sites-available/

And that you typically edit the SSL config file:

  • www.example.com-ssl.conf

Understand the default location block

The default NGINX block routes your root path / to your English Ghost instance using proxy_pass to a local port. Crimson explains that the port can vary by setup and suggests using ghost ls to see which ports are being used.

Add one location block per additional language

Crimson’s approach:

  • Add a /hi/ block (Hindi) with a different port

  • Add a /es/ block (Spanish) with a different port

Example:

The only two things that change per language block

Crimson highlights two differences:

  1. The URL path (/hi/, /es/)

  2. The proxy_pass port (different Ghost instance per language)

Restart NGINX

After updating the config, restart NGINX so it re-reads the changes (Crimson gives systemctl restart nginx as an example).

Ongoing maintenance (important)

Once set up, each language site is maintained like a normal Ghost install—just repeated per language directory/instance.

Last updated