Serving self-hosted Invoice Ninja with Caddy

Invoice Ninja is an open-source platform which helps you take care of clients, invoices, payments, expenses, time-tracking, and more… In this guide I explain how you can run Invoice Ninja on your own server with Caddy and PHP-FPM. Prerequisites MySQL Server up and running PHP-FPM up and running I assume that you have already setup […]

Running Caddy as a service on macOS X server

Installing Caddy Download Caddy from the official website. Give the executable root permissions1: $ chown root ./caddy $ chmod +s ./caddy Caddyfile Caddy reads it configuration for the Caddyfile. More information can be found in the official documentation. Launchd config Create a launchd plist file: ~/Library/LaunchAgents/com.caddyserver.web.plist. This file should look like this: <?xml version=”1.0″ encoding=”UTF-8″?> […]

HTTP caching mechanisms in Caddy

Providing the ability for clients to cache static file requests is very important. It prevents the unneeded transfer of (static) files from server to client. Caching doesn’t only speedup things for the client, but also decreases the server load. But which caching mechanisms does Caddy provide, and how can they be enabled? ETag The HTTP […]

Two months ago I started to “Serve The Web Like It’s 2016”, and I’m still loving Caddy!

Caddy? Wooha, hold your horses, what is Caddy?! Caddy is a web server like Apache or Nginx, but different: Caddy is a modern web server (supporting HTTP/2) with elegant and easy configuration. It comes with automated HTTPS (with Let’s Encrypt) and a growing number of extensions (including Git support). It’s open source software, written in […]

Serving ownCloud with Caddy

In this post, I’ll walk you through how to set up ownCloud with Caddy for a secure, personal cloud service. I wrote this guide while configuring on Ubuntu 14. ownCloud A quick introduction to ownCloud for those who never heard about it (as found on Wikipedia): OwnCloud (stylized ownCloud) is a suite of client-server software […]

Running Caddy Server as a service with systemd

In a previous blogpost I explained how to run Caddy (a brilliant and simple web server) as a service using Upstart. Systemd, however, replaced Upstart on most of the operating systems, so it makes more sense to have a guide for systemd. Caddy executable We don’t run Caddy as root to keep things as secure as […]

Caddy Server and WordPress (PHP-FPM)

Update: I added rewrite rules for WordPress permalinks to the Caddyfile. I also removed all unnecessary bits which are not needed anymore since Caddy now has built-in HTTPS support with Let’s Encrypt. Recently I discovered an amazing open source project: Caddy, a fully functional HTTP/2 webserver, written in Go. Caddy is a lightweight, general-purpose web server for […]

Running Caddy Server as a service with Upstart

Update: Need to run Caddy as service with systemd? Checkout this blogpost! Recently I discovered a very promising webserver (written in Go) called Caddy. Now, Caddy is just an executable, which I wanted to turn into a service on my Ubuntu server. Upstart Running any executable as a service can be done using Upstart. Once […]