python 反向代理怎么增加一个用户验证
海乃百川 2019-07-26 02:10:03 #!/usr/bin/python
# -*- coding: UTF-8 -*-
import BaseHTTPServer
import hashlib
import os
import urllib2
class CacheHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def do_GET(self):
m = hashlib.md5()
m.update(self.path)
cache_filename = m.hexdigest()
if os.path.exists(cache_filename):
print "Cache hit"
data = open(cache_filename).readlines()
else:
print "Cache miss"
data = urllib2.urlopen("http://127.0.0.1:9001" + self.path).readlines()
open(cache_filename, 'wb').writelines(data)
self.send_response(200)
self.end_headers()
self.wfile.writelines(data)
def run():
server_address = ('', 8001)
httpd = BaseHTTPServer.HTTPServer(server_address, CacheHandler)
httpd.serve_forever()
if __name__ == '__main__':
run()
代码如上,127.0.0.1:9001 是一个kafka-manager,我使用python做了一个反向代理,怎么样给这段脚本增加一个用户验证,即只有用户验证成功才可以访问后端的kafka-manager。