@PavelPikat

Как превратить домен в ссылку, не зная протокола?

Есть доменное имя, типа example.com которое нужно превратить в валидную ссылку в HTML шаблоне, не зная при этом истинного протокола (HTTP(S)).
Сайт может быть HTTP-only, или наоборот, HTTPS-only, и нужно безошибочно открывать правильный.

Ссылки без протокола резолвяться как локальные, а с просто двойным слэшем (//example.com) резолвится на тот протокол, который используется на странице.

Браузеры (напр. Хром) как то умеет резолвиться нужный адрес по домену, но как это сделать в простом HTML?
Допускается использование JS.
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
На самом деле, это проблема конкретных сайтов - они всегда должны быть доступны по HTTP, пусть и с безусловным редиректом на HTTPS. Соответственно, достаточно просто указывать протокол http://.
Но если сильно хочется заморочиться, то можно на клиенте в фоне делать запрос на адрес сайта с https:// и если придёт какой-то ответ 2XX или 3XX, подставлять этот протокол.
Другого способа узнать, работает ли сайт по тому или иному протоколу, кроме как сделать туда запрос, не существует.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы