今天早上,我启动了 Django 开发服务器,并通过 localhost:8000 访问它,并根据需要加载了所有内容。有时,当我通过单击终端中的地址通过终端访问该站点时:在 http://127.0.0.1:8000/处启动开发服务器
,它也能正常工作。
我停止了服务器并执行了 pip install django-sslify
来安装 this 。我添加了中间件:
MIDDLEWARE_CLASSES = (
'sslify.middleware.SSLifyMiddleware',
# ...
)
并为 Heroku 添加了这一行:
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
我运行了开发服务器并尝试使用上述两个链接访问该网站,但该页面无法加载。我 panic ,最终删除了我添加的所有行和 pip uninstall django-sslify 并重新运行服务器。我仍然无法通过上述链接访问该网站,但我可以通过0.0.0.0:8000
访问它。
然后,我重新安装了 django-sslify,添加了代码并重新运行服务器,尝试通过 0.0.0.0:8000
访问它。没有骰子。
现在,我再次卸载了它,当我通过 https://localhost:8000/
访问它时,它给我一个 SSL 连接错误并在控制台中显示一条消息:
code 400, message Bad HTTP/0.9 request type ('\x16\x03\x01\x00\x9d\x01\x00\x00\x99\x03\x01\xef\xb5\xae\xf6\xddUOY\x8d\x8a\xce\x9e!\x983\xbd\xfc4$\xb4')
You're accessing the development server over HTTPS, but it only supports HTTP.
当我尝试访问http://localhost:8000/
时,它告诉我该页面不可用。
发生了什么?
最佳答案
您的浏览器很可能缓存了将您的 HTTP 请求重定向到 HTTPS 的 HTTP 301/302 响应。清除浏览器缓存或尝试使用其他浏览器来测试是否是这种情况。
关于python - 安装 django-sslify 后无法查看本地服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35504160/