Description

Installed version 1.6.1 from scratch. But when I try to visit any page in a web-browser, I get "CGI application did not return complete set of HTTP headers" error. If I add the "standard" print "Content-Type: text/html\n\n" to my moin.cgi file then I can see the pages.

Then on the top of every page I see that log goes to stdout: 182152 INFO logging initialized Status: 200 OK Content-Type: text/html; charset=utf-8 Vary: Cookie,User-Agent,Accept-Language.

If I roll back to 1.5.8, then everything's fine.

Steps to reproduce

  1. install 1.6.1 with IIS 6.0

Example

Component selection

Details

MoinMoin Version

1.6.1

OS and Version

Win2003Server

Python Version

2.5.1

Server Setup

IIS 6

Language you are using the wiki in (set in the browser/UserPreferences)

RU

Workaround

Go to moin.cgi and change it like this:

import logging
from MoinMoin.server.server_cgi import CgiConfig, run

class Config(CgiConfig):
    # This is important, IIS does not like stuff on stderr:
    loglevel_stderr = None

    # But you still want to have moin's log output somewhere,
    # thus we write it to an own log file. Make sure that this
    # log file can be created/updated by the moin process!
    loglevel_file = logging.INFO
    # Server name - used to create .log and .prof files
    name = 'moin'
    logPath = '/path/to/logdir/%s.log' % name

Discussion

Not clear wheter this is a IIS bug or a moin bug. I could not find official cgi specs telling something about stderr.

Plan


CategoryMoinMoinNoBug

MoinMoin: MoinMoinBugs/LogGoesToStdoutOnIIS (last edited 2008-02-27 00:11:02 by ThomasWaldmann)