Как добавить иконку для веб-страницы на домашний экран iPad, если эта веб-страница работает как IIS Redirect?

Приветствую.

Есть ссылка - application1.company.com . Если по ней пройти, IIS автоматически моментально переадресует пользователя на другую страницу https://application-company.com .

Задачка - добавить на экран iPad иконку, по нажатию на которую пользователя отправит именно на application1.company.com .

Идеи?
  • Вопрос задан
  • 2632 просмотра
Пригласить эксперта
Ответы на вопрос 1
gen1s
@gen1s
Не нашёл как это сделать стандартными средствами, но придумал несколько извращенное решение. Но рабочее!
Идея состоит в том, чтобы сохранить простую html-страничку с настроенной переадресацией на application1.company.com в data: URL. Уже эту страничку добавить на экран iPad. Т.е. пользователь нажимает на иконку, открывается Safari с нашей html-страницей и дальше происходит редирект на application1.company.com/, откуда IIS переадресует на https://application-company.com/.
1) Преобразовать html в data: можно здесь: software.hixie.ch/utilities/cgi/data/data.
Наш html:
<!DOCTYPE HTML>
<html lang="en-US">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="refresh" content="1;url=http://application1.company.com">
        <title>Page Redirection</title>
    </head>
    <body>
        If you are not redirected automatically, follow the <a href='http://application1.company.com'>link to example</a>
    </body>
</html>

2) Чтобы на экране iPad была наша иконка (а не просто белый квадратик), нужно преобразовать её в base64 и добавить в раздел head.
Для примера:
<link rel="apple-touch-icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMjgwMTE3NDA3MjA2ODExODIyQTlDMUM4MjlCREJFMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyMTg4RjU1MjIxRTgxMUUzQUU0QUM4NkEwRDM4QzNEMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyMTg4RjU1MTIxRTgxMUUzQUU0QUM4NkEwRDM4QzNEMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjc3RjExNzQwNzIwNjgxMTgyMkFGODA0NkY4RDZGNTAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDI4MDExNzQwNzIwNjgxMTgyMkE5QzFDODI5QkRCRTEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7uV+/BAAAA6ElEQVR42mJk2P+fgRTAgsZXY2VokWcIlYFy731h2P+aIeUhQgETmurDxgzGAgyR5xgYD4DQ2Q8MjqIMTpwINYzITlqlAjIbqHrFJ5xOQrFBnQdEnvuOzw8oGp7/AJFGnERr2PwKRE7UYqgVx6mBES1Ye6UZ0hUZuFkYLn1gOP0eJXywa4D73l6EQYwDFKypVxn2fSekAQLmyDMkK4L0KJ/B4Qc0AHTPzhcMSjwM2ULEaQCCJ2DHKHHi0OCEEaB8rCBy6ztsGoDpYrk+w0UDRJjOAScqoKtwehpoQ4Y0vpRHIJSwAoAAAwAZv0hnC46XTwAAAABJRU5ErkJggg==">

4) В итоге после преобразования в data: URL получаем:
data:text/html;charset=utf-8,<%21DOCTYPE%20HTML>%0D%0A<html%20lang%3D"en-US">%0D%0A%20%20%20%20<head>%0D%0A%20%20%20%20<link%20rel%3D"apple-touch-icon"%20href%3D"data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw%2FeHBhY2tldCBiZWdpbj0i77u%2FIiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8%2BIDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMjgwMTE3NDA3MjA2ODExODIyQTlDMUM4MjlCREJFMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyMTg4RjU1MjIxRTgxMUUzQUU0QUM4NkEwRDM4QzNEMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyMTg4RjU1MTIxRTgxMUUzQUU0QUM4NkEwRDM4QzNEMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjc3RjExNzQwNzIwNjgxMTgyMkFGODA0NkY4RDZGNTAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDI4MDExNzQwNzIwNjgxMTgyMkE5QzFDODI5QkRCRTEiLz4gPC9yZGY6RGVzY3JpcHRpb24%2BIDwvcmRmOlJERj4gPC94OnhtcG1ldGE%2BIDw%2FeHBhY2tldCBlbmQ9InIiPz7uV%2B%2FBAAAA6ElEQVR42mJk2P%2BfgRTAgsZXY2VokWcIlYFy731h2P%2BaIeUhQgETmurDxgzGAgyR5xgYD4DQ2Q8MjqIMTpwINYzITlqlAjIbqHrFJ5xOQrFBnQdEnvuOzw8oGp7%2FAJFGnERr2PwKRE7UYqgVx6mBES1Ye6UZ0hUZuFkYLn1gOP0eJXywa4D73l6EQYwDFKypVxn2fSekAQLmyDMkK4L0KJ%2FB4Qc0AHTPzhcMSjwM2ULEaQCCJ2DHKHHi0OCEEaB8rCBy6ztsGoDpYrk%2Bw0UDRJjOAScqoKtwehpoQ4Y0vpRHIJSwAoAAAwAZv0hnC46XTwAAAABJRU5ErkJggg%3D%3D">%0D%0A%20%20%20%20%20%20%20%20<meta%20charset%3D"UTF-8">%0D%0A%20%20%20%20%20%20%20%20<meta%20http-equiv%3D"refresh"%20content%3D"1%3Burl%3Dhttp%3A%2F%2Fapplication1.company.com">%0D%0A%20%20%20%20%20%20%20%20<title>Page%20Redirection<%2Ftitle>%0D%0A%20%20%20%20<%2Fhead>%0D%0A%20%20%20%20<body>%0D%0A%20%20%20%20%20%20%20%20If%20you%20are%20not%20redirected%20automatically%2C%20follow%20the%20<a%20href%3D%27http%3A%2F%2Fapplication1.company.com%27>link%20to%20example<%2Fa>%0D%0A%20%20%20%20<%2Fbody>%0D%0A<%2Fhtml>

4) Идём на iPad. Преобразованный в data: текст (можно и закодированный в base64) копируем, отключаемся от интернета. Открываем Safari и вставляем скопированный текст в адресную строку. Жмём Go (Перейти). На мгновение откроется наша страничка и дальше произойдёт перенаправление на сайт application1.company.com/. Но т.к. мы отключены от интернета, то страничка не загрузится. Переходим назад и уже эту страничку добавляем на экран. Всё.
Проверил на iOS 7.1 и всё работает так как вы хотели.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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