Какие веб.настройка конфигурации позволит Apple-app-site-association обслуживаться?

Я добавил apple-app-site-association файл в корень веб-сайта, но IIS не доставляет файл.

каков наилучший способ заставить сервер обслуживать этот конкретный файл без расширения файла? Есть ли способ внутри сети.config явно сказать "обслуживать этот файл"?

3 ответов


У меня была такая же проблема, и я нашел это удивительным в должности:

обслуживание apple-app-site-ассоциации из IIS IIS обслуживает только файлы известных типов, определенных их расширением. Поскольку apple-app-site-association не включает расширение файла, IIS выдает ошибку 404, когда я пытаюсь открыть ее с помощью браузера. Я исправил это, добавив mimeMap в интернете.конфигурационный файл:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <staticContent>
      <!-- required for apple-app-site-association: -->
      <mimeMap fileExtension="." mimeType="application/json" />
    </staticContent>
  </system.webServer>
</configuration>

не мое предпочтительное решение, но в комментарии Дейаельдина, способ, которым я удовлетворил многие из наших потребностей, вместо этого использовал подход meta tag (в <head> тег страницы):

<meta name="apple-itunes-app" content="app-id=5555555555">

это делает так, что всякий раз, когда какие-либо пользователи на iOS переходят на сайт, они представлены с "view in app store" всплывающее окно в верхней части страницы. Как только они нажимают на всплывающее окно, они направляются в app store.

посмотреть документы Apple для смарт-приложения Баннеры.

надеюсь, это поможет некоторым людям с подобными потребностями.


почему

по соображениям безопасности, IIS не может разрешить просмотр любого файла. Например, изображение web.config.

Как

самый быстрый способ-добавить тип файла к известным типам по его расширению:

Open IIS Manager -> Sites -> Your Web Site -> MIME TYPES -> Add...
    File name extension=.
    MIME type=application/json
-> OK

теперь все работает.