В чем разница между http: // и // в веб-разработке?
Возможный дубликат:
Могу ли я изменить все мои ссылки только на //?
В последнее время я столкнулся с этой проблемой, показывая на разметку для 404 страницы Google. В нем они используют // в начале своих URL-адресов, в якорях в разметке, а также ссылаются на изображения / etc в их CSS.
Поскольку это не то, с чем я столкнулся раньше, и учитывая, что Google известен своей оптимизацией с конечной детализацией, я подумал, что попрошу здесь и посмотреть, есть ли у кого-нибудь больше информации об использовании // вместо http: // Это не то, что может быть легко Googled, чтобы найти ответ.
- Передать vars на JavaScript через атрибут SRC
- Идентификатор хэша / фрагмента URL-адреса с помощью JavaScript
- Получить url из iframe и обновить хеш в URL-адресе браузера
- Попытка проверки URL с помощью JavaScript
- Невозможно загрузить html с phantomjs
Я знаю, что // полезен в приложениях, в которых могут появиться либо http, либо https, но помимо этого существуют другие преимущества? Поддерживается ли это всеми браузерами? Существуют ли ограничения использования? Это новый / старый?
Мне было бы очень интересно, есть ли у кого-нибудь информация.
- Получить протокол, домен и порт из URL-адреса
- Извлечь ключевое слово из поиска Google в Javascript
- Как проверить, является ли строка URL абсолютной или относительной?
- Использование // в источнике <script>
- Изменить URL-адрес в адресной строке браузера без перезагрузки существующей страницы
- Конвертировать URL в json
- Получить идентификатор css из URL-адреса
- Как назначить имя домена серверу node.js?
//
«Независимо от текущего протокола».
На странице, обслуживаемой через http, это http://
, а поверх https это https://
.
Единственный недостаток, который я мог найти, это:
http://www.stevesouders.com/blog/2010/02/10/5a-missing-schema-double-download/
Internet Explorer 7 и 8 будут загружать таблицы стилей дважды, если отсутствует протокол http (s).
..
Относительный URL протокола не содержит протокола. Например,
http://stevesouders.com/images/book-84×110.jpg
становится
//stevesouders.com/images/book-84×110.jpgБраузеры заменяют протокол самой страницы для отсутствующего протокола ресурса.
..
Однако, если вы попробуете это в Internet Explorer 7 и 8, вы увидите, что таблицы стилей, указанные с относительным URL-адресом протокола, загружаются дважды. Тяжело поверить, но это правда.
Я просто тестировал его с Wireshark и IE8, и это правда.
Итак, если вам интересно, что у вас есть сайт-исполнитель, избегайте использования //
с помощью CSS.
//
– это протокол, не содержащий URL. Он будет использовать http
или https
зависимости от подключения браузера.
Существует хорошая пояснительная статья о том, почему вы хотели бы сделать это здесь: http://encosia.com/2011/01/19/cripple-the-google-cdns-caching-with-a-single-character/