HerokuとNamecheapを使用してSSLの設定に取り組んでいます。
Herokuには、現在ドメインがあります。
Domain Name - DNS Target
www.app.domain.io - www.app.domain.io.herokudns.com
www.domain.io - www.domain.io.herokudns.com
NameCheapで私は持っています:
Type - Host - Value
CNAME Record - app - www.app.domain.io.herokudns.com
CNAME Record - www- www.domain.io.herokudns.com
URL Redirect Record - @ - https://www.domain.io
CNAME Record - www - https://www.domain.io
何が機能するか:
www.domain.io works fine and does not redirect to include https
domain.io just fails to reach a site
https://www.domain.io works great!
https://domain.io fails to reach a site.
http://www.app.domain.io/ fails to reach a site.
https://www.app.domain.io/ fails to reach a site.
http://app.domain.io/ reached the heroku nothing there yet page.
理想的には、すべてのページが常にhttpsとwwwを含むようにリダイレクトする必要があります。私が間違っていることについて何か考えはありますか?
問題を修正しました。リダイレクトレコードを追加して、URLがwwwの有無にかかわらず、httpsの有無にかかわらず入力された場合に、httpsとwwwを含むようにリダイレクトされるようにしました。これには、ドメインに対して4つのリダイレクトが必要でした。
さらに、app.domain.ioのURLには、まだ何かを設定していないため、コンテンツがありませんでした。後で、app.domain.ioを新しいherokuアプリに使用することを計画していました。
十分に長く待ってから、キャッシュをクリアして問題が解決するかどうかを確認してください。
編集
Redirect Domain
の下の私のドメイン設定
Source Url Destination Url
domain.xyz https://www.domain.xyz/
www.domain.xyz https://www.domain.xyz/
上記は、httpsが常に使用されることを保証します。
私のドメインでは、advanced DNS
の下のHost Records
設定
Type Host Value TTL
CNAME Record www <link from heroku> 30 min
URL Redirect Record @ https://www.domain.xyz/ unmasked
URL Redirect Record www https://www.domain.xyz/ unmasked
これは、herokuアプリを操作するためにnamecheapで行う必要があることです。物事のheroku側にはまだやるべきことがあります。
Herokuのアプリ設定の下にDomains and certificates
セクションがあります。そこにドメインを追加できます。これにより、上からDNS Target
ブロックに入れたものである<link from heroku>
が作成されます。 HerokuではLetsEncryptも使用できるようになり、SSL証明書が自動的に更新されます。
変更の合間にしばらく待つことを忘れないでください。 DNSの変更は、適用されるまでに最大24時間かかる場合があります。
Heroku、Django、namecheapを使用していて、まだ同様の問題がある場合(つまり、https Webサイトは機能しているが、httpは自動的にhttpsにルーティングされない)、settings.pyファイルでSECURE_SSL_REDIRECT = True
も設定する必要があります。 。この追加を行うと、私の場合の問題が修正されました。
この変更は、@ Programmingjoeの回答に投稿されたURL構成に加えて、問題を修正するはずです。
これらのルールをどのように正確に設定しましたか? NamecheapとHerokuという同じセットアップを使用しています。ルートドメインをhttpsにリダイレクトするように取得できますが、httpを強制すると、安全ではなくなります。セットアップのスクリーンショットは大きな助けになります!