python - 如何将http重定向到https python http.server
问题描述
默认情况下如何将 HTTP 重定向到 HTTPS?
例如,如果我输入 example_address.com 我想获取https://example_address.com
我的代码如下
def run(server_class=HTTPServerV6, handler_class=Server, port=443):
server_address = ('::', port)
httpd = server_class(server_address, handler_class)
httpd.socket = ssl.wrap_socket (httpd.socket, certfile='./secret_private_key.pem', server_side=True)
try:
httpd.serve_forever()
except KeyboardInterrupt:
pass
httpd.server_close()
解决方案
您可以尝试在端口 80中运行另一台服务器并将其请求重定向到您的 https 服务器。
像这样的东西:
def runHTTP(server_class=HTTPServerV6, handler_class=Server, port=80):
server_address = ('::', port)
httpd = server_class(server_address, handler_class)
httpd.send_response(301)
httpd.send_header('Location','https://www.yourserver.com')
httpd.end_headers()
推荐阅读
- android - SpeechRecognizer 无法从三星 Galaxy S7 及更高版本的扬声器中转录语音
- javascript - 如何在 VSCode 的同一个项目中对 .ts 文件和 .js 文件运行 typescript-eslint
- openssl - 使用openssl s_client connect时如何忽略证书验证?
- tensorflow - CNN 编译错误:无法获得卷积算法。这可能是因为 cuDNN 初始化失败,
- python - 如何使用 dask 有效地计算自定义统计信息?
- c# - 使用 IConfidentialClientApplication WithClientSecret() 时“我们无法检索实时磁贴历史记录”
- c# - 如何在不四舍五入的情况下尽可能均匀地分配小数点 0.5
- javascript - 过滤器在循环对象的属性(对象数组)时返回一个空数组
- javascript - 从数组中删除重复的对象 - javascript?
- python - 简短的问题:在 Python/Pandas 中编辑数据框