Added a configurable site origin to the ConfigReader+Properties extension in the Website library target.

This commit is contained in:
2026-08-25 16:24:03 +02:00
parent 5b2da4eb16
commit 988090a511
4 changed files with 27 additions and 7 deletions
@@ -98,4 +98,9 @@ extension ConfigKey {
/// The configuration key for the `Strict-Transport-Security` header value (omitted when unset).
public static let strictTransportSecurity: ConfigKey = "security.strictTransportSecurity"
}
/// A namespace for the site configuration keys.
public enum Site {
/// The configuration key for the public origin the site is served at (scheme and host, no trailing slash).
public static let origin: ConfigKey = "site.origin"
}
}
@@ -50,4 +50,12 @@ extension String {
/// The website server's name.
public static let name = "SiteWebsite"
}
/// A namespace for the site string constants.
public enum Site {
/// The default public origin the site is served at (scheme and host, no trailing slash): empty, which leaves the HTTPS redirect off.
///
/// A deployment that trusts the forwarded-protocol header without also setting `site.origin` would otherwise redirect at a host the
/// template guessed for it, and a `301` is cached for a long time.
public static let origin = ""
}
}