ale*_*lex 6 python dns networking
我有一个简单的python cgi服务器:
import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable() ## This line enables CGI error reporting
server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("", 8000)
httpd = server(server_address, handler)
httpd.serve_forever()
Run Code Online (Sandbox Code Playgroud)
服务器对每个请求进行反向dns查找,以便在屏幕上显示日志记录.由于我在本地网络设置中运行服务器,因此没有可用的DNS服务器.所以每次反向dns查找都会导致查找超时,从而延迟服务器的响应.我怎样才能禁用DNS查找?我没有在python文档中找到答案.
Dou*_*der 12
您可以子类化自己的处理程序类,它不会执行DNS查找.这遵循http://docs.python.org/library/cgihttpserver.html#module-CGIHTTPServer它说CGIHTTPRequestHandler是接口兼容BaseHTTPRequestHandler和BaseHTTPRequestHandler有一个方法address_string() .
class MyHandler(CGIHTTPServer.CGIHTTPRequestHandler):
# Disable logging DNS lookups
def address_string(self):
return str(self.client_address[0])
handler = MyHandler
Run Code Online (Sandbox Code Playgroud)