diff options
| author | alex <alex@pdp7.net> | 2026-06-28 12:48:49 +0200 |
|---|---|---|
| committer | alex <alex@pdp7.net> | 2026-06-28 12:52:38 +0200 |
| commit | 2d28a8150d1cc9cbeddd2d6664ce2528edaee138 (patch) | |
| tree | a5625249a78ab432b2afa39fbec55edc03ae504c | |
| parent | 4768e81338f3f8ff3b38de59713bee2a953049b0 (diff) | |
Add /notes/ideas/static-pagesmaster
| -rw-r--r-- | IDEAS.org | 21 | ||||
| -rw-r--r-- | blog/content/notes/ideas/static-pages.gmi | 27 |
2 files changed, 28 insertions, 20 deletions
@@ -99,26 +99,7 @@ This is basically a hybrid of https://linuxcontainers.org/incus/ and https://pro * [[programming/the-content-web-manifesto/README.md][Simpler web]] ** A terminal web browser with native HTMX support, but without JavaScript support -** Gemini mirror - -- A Gemini server designed *only* for proxying http content as Gemini -- With virtual hosting support - -Configure httpd with: - -- [[https://httpd.apache.org/docs/trunk/content-negotiation.html#negotiation][multiviews]] so httpd can serve .gmi files -- Any cgi or whatever you want to generate dynamic content if needed - -Then the mirror makes requests to httpd requesting Gemini content. - -Your static site generator can do: - -- /foo.gmi -- /foo.html - -httpd will serve the HTML for /foo for regular browsers. -The mirror requests /foo to httpd, which returns the gemtext. - +** A [[https://alex.corcoles.net/notes/ideas/static-pages][static pages]] service that requires no accounts and can support easy publishing of dual HTTP/HTML + Gemini/Gemtext sites * Responsive handwriting - A tool that helps create handwritten documents that adapt to different screen and text sizes diff --git a/blog/content/notes/ideas/static-pages.gmi b/blog/content/notes/ideas/static-pages.gmi new file mode 100644 index 00000000..70da6f9c --- /dev/null +++ b/blog/content/notes/ideas/static-pages.gmi @@ -0,0 +1,27 @@ +# Static pages + +A service similar to GitHub pages, but only for custom domains. + +To use the service, you publish a TXT DNS record like "pages=$signing_public_key" to the domain that you want to use the service with. signing_public_key is a public key such as the ones used by Minisign. + +Publishing is then: + +* Create an archive of the site contents. +* Sign the archive. +* Upload the archive and the signature to a URL like https://staticpages/your.domain.here + +A command-line tool could automate all the steps. + +## Advantages + +No accounts, do not even need to keep credentials (you can always push a new signing key to DNS). + +## Other possibilities + +### Gemini support with Apache MultiViews + +=> https://github.com/alexpdp7/coppewebite Coppewebite describes a process to create dual Gemini/Gemtext + HTTP/HTML sites, along with software that helps implement and automate the process. + +## References + +=> https://jedisct1.github.io/minisign/ Minisign |
