The site configuration file defines variables available in every page
and the view template. It uses a simple key: value format with one
variable per line.
public_html/lazysite/lazysite.conf
site_name: My Website
site_url: ${REQUEST_SCHEME}://${SERVER_NAME}
footer_text: Copyright 2024
Literal string:
site_name: My Website
Environment variable interpolation:
site_url: ${REQUEST_SCHEME}://${SERVER_NAME}
Only allowlisted CGI variables are interpolated: SERVER_NAME,
SERVER_PORT, REQUEST_SCHEME, HTTPS, REQUEST_URI, REDIRECT_URL,
DOCUMENT_ROOT, SERVER_ADMIN. Other ${...} references are left
as literal text. HTTP_HOST is intentionally excluded as it is
request-supplied and untrusted.
Remote URL fetch:
latest_version: url:https://example.com/version.txt
Directory scan:
all_posts: scan:/blog/*.md sort=date desc
theme - set the site-wide view template name or remote URLnav_file - override the navigation file path (docroot-relative,
default: lazysite/nav.conf)webdav_enabled - enable the /dav WebDAV publishing endpoint
(default off). See WebDAV publishing.dav_allow_insecure - allow WebDAV Basic auth without HTTPS
(default off; for a TLS-terminating proxy or trusted LAN only)site_name: My Blog
site_url: ${REQUEST_SCHEME}://${SERVER_NAME}
theme: default
nav_file: lazysite/nav.conf
copyright: 2024 Author Name
key: value is
parsed[% site_name %]
and in the view templatescan: prefix works in lazysite.conf the same as in
tt_page_var