NotFound errors and traversal errors ==================================== Not found errors should only be displayed when someone provides a URL to an object that doesn't exist, as in: >>> print http(r""" ... GET /eek HTTP/1.1 ... """) HTTP/1.1 404 Not Found ... The page that you are trying to access is not available ... On the other hand, if we create a template that refers to something that doesn't exist: >>> print http(r""" ... POST /+/zope.app.zptpage.ZPTPage%3D HTTP/1.1 ... Authorization: Basic mgr:mgrpw ... Content-Length: 739 ... Content-Type: multipart/form-data; boundary=---------------------------125598457818223697821067764270 ... Referer: http://localhost:8081/+/zope.app.zptpage.ZPTPage= ... ... -----------------------------125598457818223697821067764270 ... Content-Disposition: form-data; name="field.source" ... ... ... -----------------------------125598457818223697821067764270 ... Content-Disposition: form-data; name="field.expand.used" ... ... ... -----------------------------125598457818223697821067764270 ... Content-Disposition: form-data; name="field.evaluateInlineCode.used" ... ... ... -----------------------------125598457818223697821067764270 ... Content-Disposition: form-data; name="UPDATE_SUBMIT" ... ... Add ... -----------------------------125598457818223697821067764270 ... Content-Disposition: form-data; name="add_input_name" ... ... test.html ... -----------------------------125598457818223697821067764270-- ... """) HTTP/1.1 303 See Other ... Location: http://localhost/@@contents.html ... We get a system error, because the problem is in the template, not in the URL: >>> print http(r""" ... GET /test.html HTTP/1.1 ... """) HTTP/1.1 500 Internal Server Error ... A system error occurred. ...