* URIs in RSS feeds must be absolute, because feed readers do not have
any consistent semantics for the base of relative links
-* If we have a `<base href>` then the HTML spec says it must be
- absolute
+* If we have a `<base href>` then HTML 4.01 says it must be
+ absolute, although HTML 5 does relax this by defining semantics
+ for a relative `<base href>` - it is interpreted relative to the
+ "fallback base URL" which is the URL of the page being viewed
([[bugs/trouble_with_base_in_search]],
[[bugs/preview_base_url_should_be_absolute]])
[[forum/Using_reverse_proxy__59___base_URL_is_http_instead_of_https]],
[[forum/Dot_CGI_pointing_to_localhost._What_happened__63__]])
+* For relative links in page-previews to work correctly without
+ having to have global state or thread state through every use of
+ `htmllink` etc., `cgitemplate` needs to make links in the page body
+ work as if we were on the page being previewed.
+
# "Would be nice"
* In general, the more relative the better
be accessed via http (e.g. the "my cert is not CA-cartel approved"
use-case), or as https if you intend to force accesses into
being via https (the "my wiki is secret" use-case).
+
+# Regression test
+
+I've added a regression test in `t/relativity.t`. We might want to
+consider dropping some of it or skipping it unless a special environment
+variable is set once this is all working, since it's a bit slow.
+--[[smcv]]
+
+# Remaining bugs
+
+## Arguable
+
+* Configure the url and cgiurl to both be https, then access the
+ CGI via a non-https address. The stylesheet is loaded from the http
+ version of the static site, but maybe it should be forced to https?
+
+* Configure url = "http://static.example.com/",
+ cgiurl = "http://cgi.example.com/ikiwiki.cgi" and access the
+ CGI via staging.example.net. Self-referential links to the
+ CGI point to cgi.example.com, but maybe they should point to
+ staging.example.net?
+
+* *(possibly incomplete, look for TODO and ??? in relativity.t)*