web-dev-qa-db-ja.com

エラー「HTTPSを介して開発サーバーにアクセスしていますが、HTTPのみをサポートしています」

SSL connection

Http:// ....のようなサーバーリンクを記述しようとすると、https://にリダイレクトされ、ターミナルで次のようになります。

message Bad HTTP/0.9 request type ('\x16\x03\x01\x00\x8b\x01\x00\x00\x87\x03\x01Ð\x118¿JÄ\x19[Òç\x01<O')
You're accessing the development server over HTTPS, but it only supports HTTP.
14
A.Raouf

異なるsettings.py(base_settings.py、local_settings.py、production_settings.py)を作成する必要があると思います。そして、settings.pyで次のようなことを行います。

import socket
if socket.gethostname()=="Raouf-PC":
    from local_settings import *

「Raouf-PC」をPCのホスト名に変更します。

P:S:Windows 10を使用しています。

その後、以下のデータをproduction_settings.pyに配置して保存します。次に、ブラウザのキャッシュをクリアして、開発サーバーのサイトにアクセスします。

SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True
SECURE_SSL_REDIRECT = True

上記がニーズに合わない場合は、local_settings.pyに以下のデータを貼り付け、ブラウザーのキャッシュを保存してクリアし、サイトにアクセスします。

SESSION_COOKIE_SECURE = False
CSRF_COOKIE_SECURE = False
SECURE_SSL_REDIRECT = False

注:production_setttings.pyおよびlocal_settings.pyの最初に以下を置きます:

from base_settings.py import *

基本設定には、ローカルサーバーと運用サーバーの両方で使用される「設定」が含まれている必要があります。これにより、毎回繰り返す必要がなくなります。

P:Sもし私の答えが受け入れられたら、私はSOで何らかの形で私を助けてくれた善良な人々に捧げます。質問に答えるのはこれが初めてです。将来的にもっとするために。

20
YoYo

おそらく設定があります SECURE_SSL_REDIRECTTrueに設定

開発サーバーを実行する場合、この設定はFalseでなければなりません

13
CORS_REPLACE_HTTPS_REFERER      = False
Host_SCHEME                     = "http://"
SECURE_PROXY_SSL_HEADER         = None
SECURE_SSL_REDIRECT             = False
SESSION_COOKIE_SECURE           = False
CSRF_COOKIE_SECURE              = False
SECURE_HSTS_SECONDS             = None
SECURE_HSTS_INCLUDE_SUBDOMAINS  = False
SECURE_FRAME_DENY               = False

1.この設定をsettings.pyの最後に追加します
2。ブラウザのキャッシュをクリアしてから、プロジェクトを実行します。

4
Akshay Tetwar

また、ポートによってページにアクセスしようとしていないことを確認することをお勧めします。たとえば、DjangoサーバーをPyCharmでいくつかのポートで実行します。

0
Rafał