Per Cederqvist writes:
If you send something like "PUT / HTTP/1.0" to something derived from
BaseHTTPServer that doesn't define do_PUT, you will get a response
that begins like this:
HTTP/1.0 501 Unsupported method ('do_PUT')
Server: SimpleHTTP/0.3 Python/1.5
Date: Tue, 30 Mar 1999 18:53:53 GMT
The server should complain about 'PUT' instead of 'do_PUT'. This
patch should fix the problem.
diff --git a/Lib/BaseHTTPServer.py b/Lib/BaseHTTPServer.py
index 7c8975d..4c9645d 100644
--- a/Lib/BaseHTTPServer.py
+++ b/Lib/BaseHTTPServer.py
@@ -252,7 +252,7 @@
self.headers = self.MessageClass(self.rfile, 0)
mname = 'do_' + command
if not hasattr(self, mname):
- self.send_error(501, "Unsupported method (%s)" % `mname`)
+ self.send_error(501, "Unsupported method (%s)" % `command`)
return
method = getattr(self, mname)
method()