使用 python 创建最简单的 https 服务器

来源:互联网 发布:日本高中留学 知乎 编辑:程序博客网 时间:2024/06/06 23:40

此文版权属于作者所有,任何人、媒体或者网站转载、借用都必须征得作者本人同意!

#!/usr/bin/env python# taken from https://gist.github.com/dergachev/7028596# # generate server.xml with the following command:#   openssl req -new -x509 -keyout https_svr_key.pem -out https_svr_key.pem -days 3650 -nodes## run as follows:#    python https_svr.py## then in your browser, visit:#    https://localhost:4443#import BaseHTTPServerimport SimpleHTTPServerimport osimport socketimport sslscript_home = os.path.dirname(os.path.abspath(__file__))ip = [(s.connect(('8.8.8.8', 53)), s.getsockname()[0], s.close()) \      for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]port = 4443def main():    print ("simple https server, address:%s:%d, document root:%s" % (ip, port, script_home))    httpd = BaseHTTPServer.HTTPServer(('0.0.0.0', port), SimpleHTTPServer.SimpleHTTPRequestHandler)    httpd.socket = ssl.wrap_socket(httpd.socket, certfile='./https_svr_key.pem', server_side=True)    httpd.serve_forever()if __name__ == '__main__':    os.chdir(script_home)    main()


                                             
0 0
原创粉丝点击