# Creating an online space to share markdown files I wanted to create a space on my server where I can upload markdown files and have them rendered directly, for them to be shared with other people. I stumbled on [the markdown module for nginx](https://github.com/ukarim/ngx_markdown_filter_module) which does exactly what I want, but seemed to ask for compilation of nginx, which wasn't exactly what I wanted in terms of maintainability (it would make it complicated to update it) I then thought that the [Caddy](https://caddyserver.com/) server does that by default, and so I've tested it out. Turns out it's not, but it offers ways to do this thanks to its template mecanism. It also, [setups automatically and transparently SSL certificates](https://caddyserver.com/docs/automatic-https) for you (using Let's Encrypt!), so I wanted to have a look. Here is the Caddy configuration file I'm now using : ```Caddyfile md.notmyidea.org { root * /home/caddy/md.notmyidea.org rewrite * /index.html file_server templates encode zstd gzip } ``` And the template: ```HTML {{$pathParts := splitList "/" .OriginalReq.URL.Path}} {{$markdownFilename := default "index" (slice $pathParts 1 | join "/")}} {{if not (fileExists $markdownFilename)}} {{httpError 404}} {{end}} {{$markdownFile := (include $markdownFilename | splitFrontMatter)}}