推測・予測ですけど (´・ω・`)
外部直リンク画像というのは簡単に言うと FC2ブログの画像サーバーにアップロードされていない画像 を表示させている場合がそれにあたります。
例えば
- 他ブログサービスにアップロードした画像をそのままのアドレスで掲載する。
- 画像ホスティングサービスにアップロードした画像を〜以下同文。
1は良くないですよ (´・ω・`)
これは非常識と言っても良い。各ブログサービスは画像を保存するためにサーバーを貸しているわけではありませんので、単に画像保存目的で開設、記事は別サービスで、といった使い方は凍結されても文句言えない。まして他の方の所有する画像をそのまま直リンクなどもってのほか(いずれもYahoo!ブロガーにめっちゃ多い)
ここでは「正しい直リンク」って言うんでしょうか。最低でも「自分が契約しているホスティングサービスへリンク」に限定して話しをすすめます。他人の画像を勝手に直リンクしてるとか、知らんわそんなやつ
本記事の「リンク」とは「画像」「スクリプト」などのファイルを指し、「他者サイト」は意味しません。
今後の基本は「内部リンク」
今まではブログが https スキームを有していることの方が稀でしたので、乱暴な言い方をすれば直リンクし放題というか。ところが現在ではいろんなサービスがSSL化を進めているわけで、SSL化した暁には httpスキームの画像表示は原則として不可 となります。
ブログサービス運営は自社のサーバーにある画像の面倒はみるでしょう。SSL化に伴う準備として、これまでアップロードされた画像のスキームを自動で置き換えるとか。あるいはスキームを省略するとか(FC2の選択はこちらのもよう)
でも外部サービスの画像に対して責任を持つ道理が無い。ですから「外部の画像が表示されなくなった。FC2クソが。」とかはやめましょう。そういうことを言う人は「バカ」です。単なる知恵足らずのバカ (´・ω・`)
ワタクシはその手の「バカ」が大嫌いです (▪⌔▪)
Amebaの例を挙げますが、どうやらあちら様は外部直リンク画像を SSL対応プロキシを一旦経由させることで表示を行っている ようです。親切ですねぇ (´・ω・`)
アホじゃね?って思ったことは内緒だよ…(ボソ)
個人的にはそんなことしなくて良いと思うなぁ。そんなことに労力割くぐらいなら自社サービスの充実に尽力して欲しいです。お伝えしておきますが、私はこのブログ内でホスティング直リンクめっちゃしてます(笑)
だけれどもFC2さんにそれをカバーしてもらおうとは思いません。地道に書き換えます。はい(笑)
直リンクを許可している画像ホスティングサービスでSSL化しているところは今のところ発見できません。DropboxやGoogle Driveなんかは https: ですがホスティング機能は削除されているようですし(外部に参照表示させるのが不可、保存に特化、という意味です)
直リンク掲載の有名どころ photobucket を始めとするこの系列のサービスは今後どうなるのか。そちらも気になるところ。
FC2で使う画像はFC2サーバーにアップロードする、というごくごく当たり前のことを当たり前にすれば良いだけです。FC2は画像の受付についても他社サービスと比べてかなり有利というか。強制的にサイズが縮小されることもありませんし、許可容量についても10GBですか?確か(調べろよ)
プロアカウントについては無制限と破格な内容ですのでよほど問題ないと思います。
混在コンテンツの「アクティブ」と「パッシブ」
画像については「利用サービスのサーバーへアップロード」して使う、というのが基本だとして。
画像の掲載というのは <img> だけではないんですね。backgroundというのもあります。backgroundにはhtmlの background属性 とCSSの backgroundプロパティ あるいは background-imageプロパティ の2つがあります。<img> というのはhtmlタグ(html要素)です。
画像のアドレスが http:スキームのままだと 混在コンテンツ という大変よろしくない状態になるわけですけども。混在コンテンツというのは安全通信内に非安全通信が紛れ込んでいる状態のことで、平たく言うと ページ(ブログ)自体は https だけど、そこに掲載されている一部内容(画像など)が http アクセス指定されている ということです。
ここで注意ですが、外部サイトへのリンクとかありますよね。外部サイトへ行くということは、現在ページから退出することになります。その場合には「混在コンテンツ」として扱われません。何故ならそれは他所様の事情であって、現滞在サイトとは無関係。そしてそこへ訪れるかどうかは閲覧者の意思に委ねられます。ですが 画像 やプラグインを動かすための スクリプトファイル などは、ページを開いた時点で既に表示あるいは動作しなければいけないですよね。ということは、閲覧者の意思とは無関係にページ表示時点で既に非安全通信を行わなければいけなくなります。こういう場合が 混在コンテンツ に相当します。
混在コンテンツは大別して2通りあります。
パッシブ混在コンテンツ(受動)
https通信ページ内でhttp通信できるコンテンツ。
対象情報の差し替えや対象監視(盗聴)による他情報内容を推察される恐れ。
主な要素
<img> <video> <audio> <object>など
アクティブ混在コンテンツ(能動)
https通信ページ内でhttp経由からページ内容全て、あるいは一部のDOMにアクセスできる。
ページ動作の変更、機密性の高い情報の窃取も可能。
パッシブな混在コンテンツの脅威に加え、より危険の高い状態となる。
主な要素
url値 を持つ全て (background掲載の画像はここに含まれます)
など
アクティブの方はscriptが含まれてます。何かしらのJS系プラグインを導入しようと思った時に、外部ファイルが http であった場合にはアクティブ。SSL化した後にはスクリプトファイルがhttpsであるか否か要確認です。
----- 追記 2017.6.1 -----
ブログカード について
このページでも利用しています。ブログカードとは他者コンテンツの 引用及びリンク に用いるものですが、以下の注意点があります。
- 引用ページでOGP設定が行われていることが前提
- SSLについてチェックするべきは2項目
後者の「2項目」は
- スクリプトファイルがhttpsになっているか
- 引用するサイトがhttpsページになっているか
はてなブログカード は https ではありません。当該ページで利用している Embedly は、サイト自体は非SSLのhttpですが、提供ファイルは https なので利用できます。あとは引用先がhttpsであるかを確認します。これらブログカードは iframe での掲載がほとんどですので、相手方の通信プロゥトコルの確認も必須です。
----- 追記 ここまで -----
画像をimgではなくbackgroundとして掲載するのはどんな時かというと、みなさんがページ全体に 背景画像を敷いたり、ヘッダーに背景を付けたり と、そんな場合です。よほど無いとは思いますが、ヘッダーに画像を…と思った時にFC2ブログ画像サーバーではなく、他サイトからの直リンクでしかもそのサイトがhttpだった場合にはアクティブ。ちなみにYahoo!ブログでいわゆる「壁紙」を利用している方で、枠の画像が一つでも外部直リンクになっている場合、超アクティブ(笑)
Yahoo!ブログ運営はbackground掲載された画像については対策を行っていません。何故ならYahoo!は元々「htmlが自由に使えます。」とは一言も言ってない。ユーザーが勝手にやっているのだからYahoo!の責にはなりません。
まとめ
SSL化対策というとどうしても「img掲載画像」に目が行きがちですが、実際にはそれだけでは足りず、あらゆるsrc属性をチェックする必要があります。
スクリプトファイルについては例えばjQueryなどのプラグインで cdn を利用した配布が有る場合。提供アドレスが相対になっている場合にはまず https も http も双方でアクセスできる状態になってます。httpsサーバーは https通信でもhttp通信でもファイル提供できますが、httpサーバーはそうはいきません。だってhttpsの方は基本は費用がかかるわけですし。このあたりの理屈屁理屈は説明するまでもないかと思います。
一番手っ取り早いのはやはり「画像やスクリプトなどのファイルは掲載先のサービスサーバーにアップロードする」ことでしょうかね (´・ω・`)
FC2がSSL化したらYahoo!ユーザーが画像保管庫的に使うようになるんだろうな。直リンク専用って感じで。たぶん。Yahoo!には何故かフラッシュに執着するユーザーがすごく多いので。え。いまさら?! ( ̄∀ ̄;) って感じだけど。年齢層が関係するんでしょうかね(笑)
そういうのはどんどん凍結しちゃって良いと思う次第。他ブログユーザーから不利益を被るのは(・A・)イクナイ
There are no comments yet.