X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/d9b4287c9a1fffeda133f92f03e2d6eb73a1d75a..ddd8d181f8f4ce1e2f42b35eac7e7a6920ff5ca2:/doc/bugs/CGI_problem_with_some_webservers.mdwn?ds=inline diff --git a/doc/bugs/CGI_problem_with_some_webservers.mdwn b/doc/bugs/CGI_problem_with_some_webservers.mdwn index 158aa5265..e727c9ae2 100644 --- a/doc/bugs/CGI_problem_with_some_webservers.mdwn +++ b/doc/bugs/CGI_problem_with_some_webservers.mdwn @@ -17,4 +17,51 @@ Here is what it looks like in iceweasel: Ikiwiki runs fine with [[debpkg boa]]. ---[[JeremieKoenig]] \ No newline at end of file +--[[JeremieKoenig]] + +It doesn't work for signin either. +What is the reason for these "header => 1" in FormBuilder initialisations? +Why do they appear two times with conflicting values in the very same hashes? + +--[[JeremieKoenig]] + +> Clearly those duplicate header settings are a mistake. But in all cases, the +> `header => 0` came second, so it _should_ override the other value and +> can't be causing this problem. (cgi_signin only sets it to 0, too). +> +> What version of formbuilder are you using? If you run ikiwiki.cgi at the +> command line, do you actually see duplicate headers? I don't: + + joey@kodama:~/html>REQUEST_METHOD=GET QUERY_STRING="page=index&do=edit" ./ikiwiki.cgi + Set-Cookie: ikiwiki_session_joey=41a847ac9c31574c1e8f5c6081c74d12; path=/ + Date: Tue, 14 Aug 2007 18:04:06 GMT + Content-Type: text/html; charset=utf-8 + + Do thttpd and mini-httpd perhaps not realize that Set-Cookis is the start of +> the headers? --[[Joey]] + +>> Thanks for your help: I think I found the problem! +>> Ikiwiki outputs (in my case) the following +>> error message on stderr, followed by an empty line: + + /srv/ikiwiki/wc/index.mdwn: (Not a versioned resource) + +>> Probably thttpd and mini-httpd read stderr as well as stdout, while apache +>> and boa don't. When using a shell-script wrapper as the CGI, +>> which redirects ikiwiki's error output to /dev/null, it works better. + +>> The edit still fails to commit, because in my wiki, index.mdwn is +>> pulled from the base wiki and somehow ikiwiki wants to change it +>> rather that create it. + +>> --[[JeremieKoenig]] + +>>> If thttpd and mini-httpd interpret CGI's stderr as stdout, then +>>> they're not properly following the CGI spec, and will break with tons +>>> of cgi scripts besides ikiwiki. And of course there are many many cases +>>> where ikiwiki might output to stderr, and that's the right thing to do. +>>> So I don't see any way to address this in ikiwiki. --[[Joey]] + +>>>> (reported as [[debbug 437927]] and [[debbug 437932]]) --[[JeremieKoenig]]