From: Joe V. A. <van...@at...> - 2000-10-09 19:25:50
|
I'm using Python 1.5.2 on Redhat 6.2, and am trying to use FastCGI with Webware-0.4.1 I'm just trying out Webware and got the 'OneShot' adapter working. Now, I want to try out FastCGI. I've built the FastCGI loadable module for Apache, and tried to use FCGIAdapter.py. Apache's server log shows that FCGIAdapter failed on 'import fcgi' I didn't see any indication that I was supposed to install this Python module, and it doesn't appear that FCGIAdapter.py sets its 'sys.path' to include /<prefix>/WebKit. So, I copied fcgi.py to /usr/lib/python1.5/site-packages. Also, I didn't see the documentation on what <prefix>WebKit/address.text should contain. Seems like you should provide a default version of this file. Once I generated address.text, containing: localhost:8086 I then invoked FCGIAdapter.fcgi My browser showed: ERROR Traceback (innermost last): File "/etc/httpd/cgi-bin/FCGIAdaptor.fcgi", line 130, in FCGICallback s.send(dumps(dict)) ValueError: unmarshallable object You can't call this from the command-line ------------------------------------------------ Why can't 'dict' be marshalled, so it can be sent on a socket? The error handling in AppServer could be improved, since this error in FCGIAdapter caused an error in AppServer. -------------------------------------------------- BEGIN REQUEST Mon Oct 9 18:45:51 2000 receiving request from <socket object, fd=7, family=2, type=1, protocol=0> received 0 bytes Exception in thread Thread-1: Traceback (innermost last): File "/var/tmp/python/python-root/usr/lib/python1.5/threading.py", line 376, in __bootstrap self.run() File "/var/tmp/python/python-root/usr/lib/python1.5/threading.py", line 364, in run apply(self.__target, self.__args, self.__kwargs) File "ThreadedAppServer.py", line 121, in threadloop rh.handleRequest() File "ThreadedAppServer.py", line 257, in handleRequest transaction = self.server._app.dispatchRawRequest(dict) NameError: dict ----------------------------------------------------- When I look at the ThreadedAppServer.py, 'dict' only gets set if 'data' exists, but the statement: transaction = self.server._app.dispatchRawRequest(dict) uses 'dict', even if 'dict' isn't set. What am I doing wrong, or is there -- Joe VanAndel National Center for Atmospheric Research http://www.atd.ucar.edu/~vanandel/ Internet: van...@uc... |