This is an old copy of the Python FAQ. The information here may be outdated.

How do I use Python for CGI?

On the Microsoft IIS server or on the Win95 MS Personal Web Server you set up Python in the same way that you would set up any other scripting engine.

Run regedt32 and go to:


and enter the following line (making any specific changes that your system may need):

.py :REG_SZ: c:\<path to python>\python.exe -u %s %s

This line will allow you to call your script with a simple reference like: http://yourserver/scripts/ (dead link) provided “scripts” is an “executable” directory for your server (which it usually is by default). The “-u” flag specifies unbuffered and binary mode for stdin — this is needed when working with binary data.

In addition, it is recommended that using “.py” may not be a good idea for the file extensions when used in this context (you might want to reserve *.py for support modules and use *.cgi or *.cgp for “main program” scripts).

In order to set up Internet Information Services 5 to use Python for CGI processing, please see the following links: (dead link) (for Win2k Server) (dead link) (for Win2k pro)

Configuring Apache is much simpler. In the Apache configuration file httpd.conf, add the following line at the end of the file:

ScriptInterpreterSource Registry

Then, give your Python CGI-scripts the extension .py and put them in the cgi-bin directory.

CATEGORY: windows


A Django site. rendered by a django application. hosted by webfaction.