X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/8935a131d02ac13b6024dff9cbf7a5f837fcdc04..ca9ef01c9304a40715417388c5ffda585bda98fc:/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn diff --git a/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn b/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn index 8b0501041..6ede7f91e 100644 --- a/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn +++ b/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn @@ -1,3 +1,46 @@ +## current status + +[[done]] again! :) + +Actually, there are two places where the configured url is still hardcoded: + +1. When searching, all the links will use it. This is annoying to fix, + and we deem it not a problem. +2. When ikiwiki dies with an error, the links on the error page will + use it. Too bad :) + +------ + +## semi-old + + +* CGI pages, with the exception of edit pages, set `` to + `$config{url}` + + I had to revert using `baseurl(undef)` for that, because it needs + to be a full url. + + Ideally, baseurl would return an absolute url derived from the url + being used to access the cgi, but that needs access to the CGI object, + which it does not currently have. Similarly, `misctemplate` + does not have access to the CGI object, so it cannot use it to + generate a better baseurl. Not sure yet what to do; may have to thread + a cgi parameter through all the calls to misctemplate. --[[Joey]] + + > Fixed, cgitemplate is used now. --[[Joey]] + +* Using `do=goto` to go to a comment or recentchanges item + will redirect to the `$config{url}`-based url, since the + permalinks are made to be absolute urls now. + + Fixing this would seem to involve making meta force permalinks + to absolute urls when fulling out templates, while allowing them + to be left as partial urls internally, for use by goto. --[[Joey]] + + > This reversion has now been fixed. --[[Joey]] + +## old attempt + It looks like all links in websites are absolute paths, this has some limitations: * If connecting to website via https://... all links will take you back to http:// @@ -147,7 +190,7 @@ you don't like my approach: ---- -[[!template id=gitbranch branch=smcv/localurl author="[[smcv]]"]] +[[!template id=gitbranch branch=smcv/ready/localurl author="[[smcv]]"]] [[!tag patch]] OK, here's an alternative approach, closer in spirit to what was initially @@ -171,10 +214,10 @@ support that. fully relative nor fully absolute, and there doesn't seem to be a good name for them... -I tested an earlier version on a demo website with the CGI enabled, and it seemed to +I've tested this on a demo website with the CGI enabled, and it seemed to work nicely (there might be bugs in some plugins, I didn't try all of them). -I haven't yet re-tested with my updated branch, which is why it's not `ready/` -yet. +The branch at [[todo/use secure cookies for SSL logins]] goes well with +this one. The `$config{url}` and `$config{cgiurl}` are both HTTP, but if I enable `httpauth`, set `cgiauthurl` to a HTTPS version of the same site and log @@ -319,3 +362,15 @@ Potential future things: >> core code (IkiWiki, CGI, Render and the pseudo-core part of editpage) >> and 5 in plugins, since I used it for things like redirection back >> to the top of the wiki --[[smcv]] + +merged|done --[[Joey]] (But reopened, see above.) + +---- + +Update: I had to revert part of 296e5cb2fd3690e998b3824d54d317933c595873, +since it broke openid logins. The openid object requires a complete, +not a relative cgiurl. I'm not sure if my changing that back to using +`$config{cgiurl}` will force users back to eg, the non-https version of a +site when logging in via openid. + +> Ok, changed it to use `CGI->url` to get the current absolute cgi url. --[[Joey]]