A Fastly Compute@Edge service that renders externally hosted Markdown files.
https://markdown-at-edge.edgecompute.app/
3f008be16c | ||
---|---|---|
.cargo | ||
content | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md | ||
fastly.toml | ||
rust-toolchain.toml |
README.md
Markdown@Edge
A Markdown renderer on the Compute@Edge platform from Fastly.
The main source file, src/main.rs
, contains all the code for the renderer.
The header and footer files I use are included at content/_header.md
and
content/_footer.md
for easy inspection.
Nginx Configuration
In order to best support this application, it's important to add the following line to Nginx's MIME types configuration:
text/markdown md;
I also disabled gzip and set the max-age and cache-control headers as follows:
server {
# ...
location /edgeblog {
# To illustrate the source to visitors.
autoindex on;
autoindex_exact_size off;
autoindex_format html;
autoindex_localtime on;
# To facilitate tagging.
gzip off;
# Cache-Control headers
expires 1h;
add_header Cache-Control "public";
}
}