カテゴリー
HTML IT プログラム

脱・初心者!ドキュメント・ルート

このページを読む前に、先に脱・初心者!スキーマレスURLを読む事をお勧めします!

ドキュメント・ルートとは?!

ドキュメント・ルートとは、サイトのトップの事です。ドメイン名の直下の事です。具体的には、//phpbeginners.net/の事です。

ドキュメント・ルートが、そのサイトのルート(/)なので、ドキュメント・ルート・パス(ドキュメント・ルートからの絶対パス)を使うと、ドメイン名の省略ができるので、テスト環境のURL(//test.phpbeginners.net/top.html)と本番環境(//phpbeginners.net/top.html)といった、ドメイン名の違いを吸収することができます。

トップページヘのリンクを<a href="/">トップ</a>と記述する事ができます。

また、相対パスで記述する必要がなくなるので、<link type="text/css" href="../../css/index.css" />といった不具合の元となる記述が防げます。

カテゴリー
HTML IT プログラム

脱・初心者!スキーマレスURL

スキーマレスURLとは

スキーマレスURLとは、スキーマ(スキーム)の無い(レス)URLの事です。

そもそもスキームとは?!

スキーム(scheme)とは、http、https、ftp、sshなど、プロトコルをURL内に指定する箇所の事です。

HTMLでは、<a href="http://phpbeginners.net">とURLを記述しますよね?そこのhttpやhttpsの事です。これを省略する(記述しない)記法をスキーマレスURLと言います。

URLのhttpやhttpsって省略できるの?!

できます!

具体的には以下のように書きます。実際に自分で書いてアクセスしてみて下さい。リンクは有効です。

<a href="//phpbeginners.net">phpbeginners.net</a>

スキーマレスURLの記法のポイントは、URLの先頭を//(ダブルスラッシュ・スラッシュ2つ)にする事です。

疑問!スキームを指定しなかった場合はhttpになるの?httpsになるの?

httpになるか、httpsになるかは、現在表示しているページがhttpかhttpsかに寄ります。現在のページのプロトコルを踏襲(引き継ぎ)します。

つまり、httpのページならhttp、httpsのページならhttpsでアクセスします。

疑問!それに何のメリットがあるの?

httpsとhttpのプロトコルが混じるのが防げます!

httpsのページにhttpが混じっていると問題なの?

httpsのページに、httpが混在していると、ブラウザは安全ではないと警告しています。(普段は目立たないので気づきませんが)

SEO上も不利に働くかもしれません。

何が問題かというと、httpsで暗号化していても、httpの通信から情報が漏れることがあるからです。単純なところではCookieが閲覧可能な状態で送受信されます。