web-dev-qa-db-ja.com

実際のリンクが機能する前に、httpまたはhttpsの代わりに「//」が機能するのはなぜですか?

//google.comの代わりにhttp://google.comを記述できることに気づきましたが、それでも機能します。

それはある種の速記ですか?多分それは私のブラウザ(Chrome 14)に組み込まれているものですか?

httphttpsの代わりにダブルスラッシュを使用しても安全ですか?

5
daGrevis

//のようなものがブラウザによってどのように処理されるかは、ブラウザによって異なります。標準的な使用例はhttp://であり、すべてのブラウザで問題なく機能します。

そうは言っても、ブラウザが最も頻繁に使用されるのはHTTPであるため、大多数のブラウザは可能な限りHTTPを試行します。これは最も安全な選択でもあります。HTTPトラフィックはブラウザによって可能な限りサンドボックス化され、アドレスがローカルであると想定するよりも安全である必要があります。

3
Frazell Thomas

//はすべての主要なブラウザでサポートされています。 Webベースのアプリケーションを開発していて、HTTPとHTTPSの両方で機能するコードを作成する必要がある場合に非常に便利です。

たとえば、次のように書くことができます。<script src="//myscript.js" />使用しているプロトコルに関係なく、常に機能します。

15
user199626

この質問は古いと思いますが、受け入れられた回答は実際には質問に答えていません。

それはある種の速記ですか?多分それは私のブラウザ(Chrome 14)に組み込まれているものですか?

はい、それはドキュメントが提供されたプロトコルの省略形です。 「このページには安全なアイテムと安全でないアイテムの両方が含まれています。安全でないアイテムを表示しますか?」という恐ろしいことを回避します。メッセージ。

Httpとhttpsの代わりにダブルスラッシュを使用しても安全ですか?

はい、今日のすべての主要なブラウザはそれをサポートしています。

通常、自分のサイトに対しては役に立ちませんが、他のサイト(絶対URLが必要な場合)からのリソースを含めるのに非常に役立ちますが、HTTP/HTTPSミックスモードについて心配する必要はありません。 。

また、ドキュメントが、開発サイトや本番サイトなど、安全な場所と非安全な場所の両方から提供される場合にも役立ちます。

詳細については、 http://www.paulirish.com/2010/the-protocol-relative-url/ を参照してください。

5
Brandon