スラッシュ2つから始まる絶対URL
JavaScriptやCSSなど、ほとんどの場合は「../」を使う相対パスで記述しますが、どうしても「http://」から始まる絶対パスで書かなければならない場合もあります。
構築する段階ではあまり気になりませんが、運用開始からしばらくして「SSLを導入しようか」と考えた時にかなりの労力がかかる事があります。
SSLを導入すると「http://」から「https://」に変わります。
その時に読み込むファイルは全て「https://」からのアクセスでなければいけません。
ですが絶対パスで「http://」と書かれているものがあれば全てを修正しなければならないんです。
読み込むファイル全てなので、JavaScriptやCSSはもちろん、CSSで設定している背景画像などのリンクも含まれます。
ただし外部のサイトから直接リンクして設置している画像や、外部サイトへのリンクURLは含みません。
相対パスで書かれていれば必要にならない作業ですが、状況によっては相対パスではなく絶対パスで指定しなければならない事もあります。
そうした時に箇所を洗い出して修正・・・その後リンクチェック・・・となかなかスムーズには進める事ができませんよね。
http:やhttps:を省略できる
通常であれば<img src=”http://www.attend.jp/image.jpg”>と書かなければなりません。
ですがこれではSSL化した時に修正する手間が出てしまいます。
そこで省略して<img src=”//www.attend.jp/image.jpg”>と記述する事ができます。
これによってhttp:で開いている時はhttp:でアクセスさせ、
https:で開いている時はhttps:でアクセスさせることができます。
img要素で紹介しましたが、他にもa要素やscript要素、link要素でも使う事ができます。
またCSS内に画像を読み込むリンクパスにも使う事ができます。
httpsへの対策が必須になりつつある
Googleは全ページSSL通信で保護されているWebサイトを優遇する事を発表しています。
また、メールフォームなどの入力フォームのあるページがSSLに対応していないと、2017年10月よりテキストを入力すると「保護されていません」という警告を表示するようになります。
また、シークレットモードを使用している場合、httpのページにアクセスするだけで「保護されていません」という表示を出すという警告文を出しています。
このような警告文が出れば、どんなに素晴らしいコンテンツでも怖くなりませんか?
もうSSL化は必須の対応になりつつあります。
直前になってSSL化しようと思っても、証明書の取得やページ側の対応など、時間が必要となってしまいます。
出来れば今のうちから対策をして、今後のホームページ運用が問題なく続けられるように検討してみてはいかがでしょうか。
まとめ
・img要素やa要素、script要素、link要素などでファイルリンクを行う際、http:やhttps:は省略できる
・省略する事で、http:、https:が混在してしまう事を防ぐ事ができる