]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/bugs/W3MMode_still_uses_http:__47____47__localhost__63__.mdwn
Force use of $config{url} as top URL in w3mmode
[ikiwiki.git] / doc / bugs / W3MMode_still_uses_http:__47____47__localhost__63__.mdwn
index 270b909a9e3cb31199e7c6789ae384e63441cb41..c21329bae61cc52f228d6d9fd58e502b175db988 100644 (file)
@@ -7,3 +7,30 @@ ikiwiki version is 3.20110715ubuntu1.
 w3m is 0.5.3.
 
 -- [[terry|tjgolubi]]
+
+I made it work, though probably not completely, by renaming
+~/.ikiwiki/wrappers/ikiwiki.cgi to ikiwiki2.cgi and replacing it with:
+
+    #!/bin/bash
+    /home/tjgolubi/.ikiwiki/wrappers/ikiwiki2.cgi $* | sed -e 's,http://localhost,file://,g'
+
+I'm afraid that this hack may have bad side-effects, but I hope it points you to the cause/solution.
+Of course, the next time I rerun ikiwiki --setup, it will overwrite my wrapper-wrapper.
+
+-- [[terry|tjgolubi]]
+
+I made a logfile of all the args, env, and stdin/stdout to/from my wrapper.  If you're interested, I'll email it to you.  I wasn't able to attach it here.
+
+-- [[terry|tjgolubi]]
+
+I confirm that the supplied w3mmode setup appears not to work. When I try to edit a page and save it, w3m tries to access an URL beginning http://localhost/ . The HTML source of the edit page contains a BASE URL beginning with http://localhost. It should not. Maybe this is a result of changes a while back, where use of absolute URLs was enforced in various places in Ikiwiki.
+
+-- Martin
+
+The problem is that IkiWiki::CGI::cgitemplate() and IkiWiki::CGI::redirect() use Perl's CGI::url() to determine the absolute URL of the CGI script when it is being executed. url() generates an URL beginning http://localhost. As w3m's serverless CGI mode is rather unusual, presumably there's no provision for the URL of a CGI script beginning file:///, even if there's a way to specify that.
+
+A quick workaround might be to force the use of $config{url} instead of $cgi->url as a base for URLs when w3mmode is set.
+
+-- Martin
+
+> [[Fixed|done]] --[[smcv]]