Saw how to add a custom error message in this thread:
http://groups.google.com/group/web2py/browse_thread/thread/834cbe25394e0d71/61f55eeb2432a6a8?lnk=gst&q=404#61f55eeb2432a6a8

That's what I want to do but if I use routes_onerror it returns 303:

127.0.0.1, 2009-03-12 13:30:55, GET, /myapp/default/BAD-URL, HTTP/1.1,
303, 0.183876

Google and other spiders will want an unambiguous 400 or 404.

http://googlewebmastercentral.blogspot.com/2008/08/farewell-to-soft-404s.html

You can see 404s via the Google webmaster tools:
http://googlewebmastercentral.blogspot.com/2008/10/webmaster-tools-shows-crawl-error.html

I've turned this off for now but it would be nice to get a "hard 404"
for URLs that don't work.

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

303 See Other

The response to the request can be found under a different URI and
SHOULD be retrieved using a GET method on that resource. This method
exists primarily to allow the output of a POST-activated script to
redirect the user agent to a selected resource. The new URI is not a
substitute reference for the originally requested resource. The 303
response MUST NOT be cached, but the response to the second
(redirected) request might be cacheable.

The different URI SHOULD be given by the Location field in the
response. Unless the request method was HEAD, the entity of the
response SHOULD contain a short hypertext note with a hyperlink to the
new URI(s).

      Note: Many pre-HTTP/1.1 user agents do not understand the 303
      status. When interoperability with such clients is a concern,
the
      302 status code may be used instead, since most user agents
react
      to a 302 response as described here for 303.


400 Bad Request

The request could not be understood by the server due to malformed
syntax. The client SHOULD NOT repeat the request without
modifications.

404 Not Found

The server has not found anything matching the Request-URI. No
indication is given of whether the condition is temporary or
permanent. The 410 (Gone) status code SHOULD be used if the server
knows, through some internally configurable mechanism, that an old
resource is permanently unavailable and has no forwarding address.
This status code is commonly used when the server does not wish to
reveal exactly why the request has been refused, or when no other
response is applicable.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to