[Zope-CVS] CVS: Packages/pcgi/Win32 - Makefile.nt:1.1 README.NT:1.1 parseinfo.exe:1.1 pcgi-wrapper.exe:1.1
Fred L. Drake, Jr.
fred@zope.com
Thu, 20 Mar 2003 15:39:58 -0500
Update of /cvs-repository/Packages/pcgi/Win32
In directory cvs.zope.org:/tmp/cvs-serv8256/Win32
Added Files:
Makefile.nt README.NT parseinfo.exe pcgi-wrapper.exe
Log Message:
Make the PCGI support code available via CVS without having to maintain and
distribute it as part of the Zope application server. The appserver still
contains the necessary support to allow a PCGI-capable web server to talk
to it.
=== Added File Packages/pcgi/Win32/Makefile.nt ===
# Makefile.nt
VERSION = 2.0a4
CC = cl
CFLAGS = /W3 /DWIN32 /I..
LIBS = wsock32.lib
SRCDIR= ..
CREOSOTE_DIR = $(SRCDIR)/MrCreosote
CORE = $(SRCDIR)/pcgi.h #parseinfo.c
.c.obj:
$(CC) /c $(CFLAGS) $*.c
all: pcgi-wrapper.exe parseinfo.exe creosote.obj
creosote.obj: $(CREOSOTE_DIR)/creosote.c $(CREOSOTE_DIR)/creosote.h
$(CC) /c $(CFLAGS) /I$(CREOSOTE_DIR) /Focreosote.obj $(CREOSOTE_DIR)/creosote.c
parseinfo1.obj: $(SRCDIR)/parseinfo.c $(CORE)
$(CC) /c $(CFLAGS) /DMAIN_PARSEINFO /Foparseinfo1.obj $(SRCDIR)/parseinfo.c
parseinfo2.obj: $(SRCDIR)/parseinfo.c $(CORE)
$(CC) /c $(CFLAGS) $(SRCDIR)/parseinfo.c /Foparseinfo2.obj
pcgi-wrapper1.obj: $(SRCDIR)/pcgi-wrapper.c $(CORE)
$(CC) /c $(CFLAGS) /I$(CREOSOTE_DIR) /DPCGI_WRAPPER_MAIN /DCREOSOTE /DVERSION=\"$(VERSION)\" /Fopcgi-wrapper1.obj $(SRCDIR)/pcgi-wrapper.c
pcgi-wrapper2.obj: $(SRCDIR)/pcgi-wrapper.c $(CORE)
$(CC) /c $(CFLAGS) /I$(CREOSOTE_DIR) /DCREOSOTE /Fopcgi-wrapper2.obj $(SRCDIR)/pcgi-wrapper.c
parseinfo.exe: parseinfo1.obj pcgi-wrapper2.obj creosote.obj
link /OUT:parseinfo.exe parseinfo1.obj pcgi-wrapper2.obj creosote.obj $(LIBS)
pcgi-wrapper.exe: pcgi-wrapper1.obj parseinfo2.obj creosote.obj
link /OUT:pcgi-wrapper.exe pcgi-wrapper1.obj parseinfo2.obj creosote.obj $(LIBS)
=== Added File Packages/pcgi/Win32/README.NT ===
README.NT - one day this will grow up and become a real README file.
PCGI 2.0a4 Win32 binary release (alpha 4) August 10, 1998
contact: jeffbauer@bigfoot.com
What is this?
The collection of files below is the first Win32
release of PCGI, the Persistent CGI wrapper for
Bobo applications. For more information about Bobo,
go to Digital Creations site: http://www.digicool.com
Files (in relative order of importance):
pcgi-wrapper.exe - the main program
pcgi_publisher.py - modified to handle both Unix & Win32
pcgifile.py - indispensible for tracking down problems
pcgitime.py - sample module
pcgitest - sample PCGI info file
killpcgi.py - handy for killing the running process
parseinfo.exe - used only when necessary (to view the pcgi
info file the way pcgi-wrapper sees it)
For information about Persistent CGI, check out:
http://starship.skyport.net/crew/jbauer/persistcgi/
(This information may soon move over to www.digicool.com)
Platforms tested?
Apache/Win32 1.3.1 running on NT 4.0. However, it should
run on any Win32 platform running a server supporting http.
Basic checklist to get the sample application up and running:
0. Install Python, Bobo, and a web server on your machine.
If you haven't got these things already working, please
see my notes on the subject:
http://starship.skyport.net/crew/jbauer/apachenotes/
1. Put pcgi-wrapper.exe where you normally place your
binary executables, or in cgi-bin.
2. Put pcgi_publisher.py in a directory where you normally
put your .py scripts -- cgi-bin is okay, but you will
specify the path in your info file, regardless.
3. Put pcgitest & pcgitime.py in cgi-bin. You will have
to modify the first #! she-bang line in pcgitest to
match the path of where you put pcgi-wrapper.exe. Also,
all directives must match your environment -- the examples
included are for illustration purposes only. Please
read the online (URL above) PCGI documentation for
further information.
4. Run your setup against pcgifile.py, a sanity check
described in:
http://starship.skyport.net/crew/jbauer/persistcgi/pcgifile/
http://starship.skyport.net/crew/jbauer/persistcgi/howto
5. Give me feedback, please: jeffbauer@bigfoot.com
-------------------
Microsoft IIS Notes:
Amos Latteier notes that some web servers, notably Microsoft's IIS,
cannot deal with the first line in a CGI program like Apache:
#!C:\WINNT\system32\pcgi-wrapper.exe
The solution is to use a .pcgi extension for your info file and create
a file association between .pcgi and pcgi-wrapper.exe with an IIS script
map registry entry, e.g.:
.pcgi C:\winnt\system32\pcgi-wrapper.exe %s
Now info files with the .pcgi extension will execute as cgi
programs.
[Amos further notes in a posting to the Bobo list:]
IIS 4 by default sends a custom 404 error message which masks
Bobo's 404 error information. This effectively keeps you from
seeing what Bobo is trying to tell you about why it is not
publishing your object. To get rid of this annoyance go to
the web site properties dialog in the Microsoft Management
Console application. Click on the "Custom Errors" tab. Choose
the 404 error and change it to use "Default" error message.
Voila, you're back in business, and can read Bobo information in
the source of your 404 error messages now.
=== Added File Packages/pcgi/Win32/parseinfo.exe ===
<Binary-ish file>
=== Added File Packages/pcgi/Win32/pcgi-wrapper.exe ===
<Binary-ish file>