
pulintz at umich
Dec 8, 1998, 8:14 AM
Post #1 of 3
(344 views)
Permalink
|
|
RE: - newbie PCGI problems (fwd)
|
|
On Mon, 7 Dec 1998, Jeff Bauer wrote: > > > NEWBIE QUESTION I: > > Exactly where do you put the mod_rewrite config info? I > > tried putting it in the normal three .conf files and got > > errors. I DID compile the server with the mod_rewrite > > included. > > The Rewrite directives for Apache normally go in > httpd.conf. Actually the Rewrite directives should only > affect authorization, so if you are denied access *after* > the user name and password dialog appears, everything > else with PCGI is probably working. Cool. I added em, but it didn't seem to help much. > > Ah, this points out a potential problem. If you start using > Zope with ZopeHTTPServer under your account, then it's possible > that the database is no longer accessible through your web > server. This is something we should document better, because > it represents a natural progression of tasks. > Yea, I probably shoulda mentioned that... I did run the wo_pcgi.py script first with the ZopeHTTPServer, and it installed flawlessly, and I played around in there a bit... > > File > > "/export/home/pulintz/Zope-1.9b1-src/lib/python/ > > Products/sample/Product.py", > > line 24, in ? > > import OFS.SimpleItem, Persistence, Acquisition, AccessControl.Role > > ImportError: (<class exceptions.ImportError at ab540>, > > 'No module named Persistence') > > > Went into the Product.py file and changed "Persistence" to > > "BoboPOS.Persistence", and tried to bring up zope in the > > browser again. I got the authentication window! But I > > couldn't authenticate, getting the error message concerning > > the authentication headers. > > Changing the code in Product.py is a no-no at this stage > unless you're doing something benign (e.g. log file or > MrCreosote) because you're simply hiding a problem that > will be more difficult to track later. See below. > Okay, changed that back... actually, to be totally safe, I scrubbed everything and reinstalled Zope, making the appropriate permissions changes, and adding the PYTHONPATH to the pcgi info file... I also rechecked the apache configuration files to make sure the mod_rewrite was included in the build, and to make sure that I could follow symbolic links,etc. Tried to fire up Zope and got the "Serious Application Error" screen. Checked the pcgi.log, and had the same permission trouble with the Data.bbb file, so I reset these permissions to be globally writable and tried again-- got the authentication screen. Still can't authenticate. Gives the "You are not authorized to access this resource. No Authorization header found" error. Reading your "Sacrificial Virgin" email: so on Solaris is it necessary to have the UNION_SEMUN macro in pcgi.h? (I'll try and avoid editing the Publish.unauthorized() method) Anything else need to be done, or should I just wait for the next release? > > > > PCGI info file: /export/home/pulintz/Zope-1.9b1-src/Zope.cgi > > PCGI wrapper: /export/home/pulintz/Zope-1.9b1-src/pcgi/pcgi-wrapper > > error attempting: 'from cgi_module_publisher import publish_module' > > status: FAILURE > > This provides us an important clue, although it's slightly > misreported and you actually had it available in your earlier > traceback. (Zope was released before pcgifile.py could be > updated; to be remedied shortly.) > > The pcgi_publisher.py module is actually trying to import > publish_module from ZPublisher. > Yea-- Can't seem to get around this... <cringe> Potential stupid question: Shouldn't there be a ZPublisher module somewhere? </cringe> Anyway, trying your advice below... > Since your problem (authentication aside) is essentially > one of not being able to import the correct module, for > the time being let's put PYTHONPATH in your Zope.cgi > info file: > > PYTHONPATH=/usr/local/bin/python:. > > If the solution still isn't obvious, you can try > to expedite things by creating a test cgi file, > TestZope.cgi: > > #!/usr/local/bin/python > > print "Content-type: text/html" > print > print "Looks OK" > > Get TestZope.cgi working and then add some import statements, > placed just before print "Looks OK", e.g.: > > from ZPublisher import publish_module > > As it breaks, you can add to your import path by iteratively > doing the following, placing the sys.path.append just ahead > of importing publish_module. > > import sys > sys.path.append('/export/home/...') > > The step above shouldn't be necessary, but it helps to > define a small test case so that you can narrow down the > real problem. And it's better than sitting there staring > at your screen <wink>. > The simple script with just "Looks okay" works fine of coarse, but I can't seem to find a path to ZPublisher anywhere, no matter how many locations I add to sys.path. Trying to test pcgi more, I did the Example /pcgitest/getTime and I got the "Temporarily Unavailable" screen, with no additional error message. (And I did make sure the directives were set correctly) NOW, the ../cgi-bin/pcgifile.py?filename=.../Zope.cgi thing gives me PCGI info file: /export/home/pulintz/Zope-1.9b1-src/Zope.cgi PCGI wrapper: /export/home/pulintz/Zope-1.9b1-src/pcgi/pcgi-wrapper PCGI_SOCKET_FILE write permission error: /export/home/pulintz/Zope-1.9b1-src/var/pcgi.soc status: FAILURE but I've checked the permissions on everything, and /var is globally writable. I'll keep at it... I installed Bobo, and that works, which makes me feel a bit better. Maybe I'll content myself to play around with that until the dust settles a bit. Thanks for the help so far! -P
|