Jim McDonald
jimmcd at ns.sympatico.ca
Sat Mar 14 22:54:05 EDT 2009
Graham Dumpleton wrote: > 2009/3/15 Jim McDonald <jimmcd at ns.sympatico.ca>: > >> Graham Dumpleton wrote: >> >> 2009/3/15 Jim McDonald <jimmcd at ns.sympatico.ca>: >> >> >> OK. >> >> The mod_python.publisher problem is like this: >> >> Following the instructions in the mod_python manual, I created a test >> directory under my Apache server root called 'Python' and added to >> httpd.conf these lines: >> >> <Directory "C:/Program Files/Apache Software >> Foundation/Apache2.2/htdocs/Python/"> >> AddHandler mod_python .py >> PythonHandler mptest >> PythonDebug On >> </Directory> >> >> Mptest.py is, of course, the test script described in the manual. >> >> It worked as described. >> >> I then proceeded to the 'Tutorial' in the manual and substituted >> mod_python.publisher for mptest in httpd.conf. I also added the form.htm >> page to /htdocs and form.py to the Python directory. This resulted in a 404 >> error--"The requested URL /Python/form.py/email was not found on this >> server." Simpler scripts (like mptest.py) in the same directory fail in the >> same way. >> >> No error shows up in Apache's error log. >> >> It's very puzzling to me that Apache is unable to find files that are >> plainly present in the places where it says it can't find them. Any advice? >> >> >> Post the contents of the form.py file. >> >> Also have a read of: >> >> http://webpython.codepoint.net/mod_python_tutorial >> >> It is a better tutorial. >> >> Graham >> >> >> >> Form.py goes like this: >> >> import smtplib >> >> WEBMASTER = "webmaster" #webmaster email >> SMTP_SERVER = "SIRIUS" # That's the name of my server. >> # The rest of the code is cut-and-pasted >> # out of the tutorial. >> def email(req, name, email, comment): >> if not (name and email and comment): >> return "A required parameter is missing, \ >> please go back and complete the form." >> msg = """\ >> From: %s >> SubjectL feedback >> To: %s >> >> I have the following comment: >> >> %s >> >> Thank you, >> >> %s >> >> """ % (email, WEBMASTER, comment, name) >> >> # send it out >> conn = smtplib.SMTP(SMTP_SERVER) >> conn.sendmail(email, (WEBMASTER), msg) >> conn.quit() >> >> # provide feedback to the user >> s = """\ >> <html> >> >> Dear %s,<br> >> Thank you for your kind comments. \n >> We will get back to you shortly. >> >> </html>""" % name >> >> return s >> >> It takes input from this web form: >> >> <html> >> Please provide feedback below: >> <p> >> <form action="Python/form.py/email" method="POST"> >> >> Name: <input type="text" name="name"><br> >> Email: <input type="text" name="email"><br> >> Comment: <textarea name="comment" rows=4 cols=20></textarea><br> >> <input type="submit"> >> >> </form> >> </html> >> >> I hope this sheds light. >> >> Thanks very much for your attention to this and for your quick response. >> >> I'll go and have a look now at the tutorial you mentioned. >> > > This only has a chance of working if HTML file is in too directory of > server. Where have you put it? If in same directory as .py file, > change 'action' in form to be just 'form.py/email'. > > Please use reply-all and keep followups on the list. > > > > Graham > > _______________________________________________ > Mod_python mailing list > Mod_python at modpython.org > http://mailman.modpython.org/mailman/listinfo/mod_python > > It was in the root directory. I moved it to the Python directory, amended the path as suggested, and ran it from there. Same result. -- -------------- next part -------------- Skipped content of type multipart/related
|