hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

Upgrade-Insecure-Requestsを使ってmixed-contentをだいたい直す

ブログをHTTPS化するとHTTPのリソースは読み込めなくなってしまう.
http://example.com あらため https://example.com/ みたいにドメインはそのままでhttpからhttpsに置換するだけでアクセスできるなら,Upgrade-Insecure-Requestsを使うと簡単.
詳細設定→headに要素を追加 に以下を貼れば完成する.

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

対応しているブラウザで,かつサイト側がHTTPSでの通信を受け付けていたら,HTTPへのリクエストをHTTPSに書き換えてくれる.
IEやedgeは対応していないので,IEやedgeでも見てる人が多いブログなら,手で記事内のURLを書き換えたほうが,手間なかわりに喜ぶ人を増やせる.
配信元のサイトでHTTPS対応していない場合はHTTPのままなので,その場合は手でURLを書き換える必要がある.とはいえ現代ではブログに貼りたいような大半のサイトはHTTPS対応されていると思う.怪しいブログパーツ配信サイトとか,直リンクで個人サイトの画像を貼ってたときとか,古いブログカウンターとかは対応していない可能性がある.

つくりおきをHTTPS化するにあたって,過去記事がたくさんあって手で書き換えるのは大変なわりに,すべてのブラウザを使う人類やロボットにこのレシピを見てほしい!!みたいなテンションでもなく,最近のブラウザで最近の記事を読めたらそれでいいだろうと思ったので,とりあえずUpgrade-Insecure-Requestsしたらだいたいそれらしく直った.
tsukurioki.hatenablog.com

追記

Upgrade-Insecure-Requestsを使ってmixed-contentをだいたい直す - hitode909の日記

HSTSつかわないの

2018/03/06 11:55

たしかに自分でコントロールしてるサイトならHSTSの設定してあったらよさそう.しかしHSTSでmixed content直せるものなんでしょうか,そもそも通信が発生しないのかと思っていました.
あと,現実世界でHSTSに出会ったことなくて,世の中的にどれくらい使わててるのかも気になる.