X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/444a88568acb8235b6af6d47e836be0d44934f53..f5a1550441a9d58652d93deacc333f143a7ecfbd:/doc/todo/design_for_cross-linking_between_content_and_CGI.mdwn
diff --git a/doc/todo/design_for_cross-linking_between_content_and_CGI.mdwn b/doc/todo/design_for_cross-linking_between_content_and_CGI.mdwn
index d00368bfb..d8040bf3e 100644
--- a/doc/todo/design_for_cross-linking_between_content_and_CGI.mdwn
+++ b/doc/todo/design_for_cross-linking_between_content_and_CGI.mdwn
@@ -32,8 +32,10 @@ rather than solving one bug at the cost of exacerbating another.
* 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 `` then the HTML spec says it must be
- absolute
+* If we have a `` then HTML 4.01 says it must be
+ absolute, although HTML 5 does relax this by defining semantics
+ for a relative `` - 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]])
@@ -62,6 +64,11 @@ rather than solving one bug at the cost of exacerbating another.
[[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
@@ -102,3 +109,26 @@ in the setup file as http if you intend that they will most commonly
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)*