0

在为 iOS 应用程序设置通用链接时,Apple 声明:

  • 创建一个apple-app-site-association文件,其中包含有关您的应用可以处理的 URL 的 JSON 数据。
  • 将apple-app-site-association文件上传 到您的 HTTPS Web 服务器。您可以将文件放在服务器的根目录或 .well-known 子目录中。

我们创建了一个名为“apple-app-site-association”的文件,没有扩展名,但如果导航到“ http://ourdomain.com/apple-app-site-association ”,我们会收到 404 file not found 错误。

Apple 指定不要在文件名中添加 .json。

我们看到另一个 SO 溢出答案,描述了对 IIS 的配置更改以提供不带扩展名的文件。但是,让这个文件从 GoDaddy 的 Linux 或 IIS 服务器正确提供服务的诀窍是什么?

4

2 回答 2

2

我可以通过在根级别添加一个 .htaccess 文件来使其工作,该文件包含:

<Files "apple-app-site-association">
  ForceType application/json
</Files>

奇怪的是,如果我尝试将 apple-app-site-association 和 .htaccess 文件放在 .well_known 目录中,我无法让它工作。

使用此配置,此处的验证器https://branch.io/resources/universal-links/全部为绿色,并且链接本身有效。

于 2016-06-16T17:37:16.650 回答
0

这对我们有用。

我们将此文本与 apple-app-site-association 文件一起放在我们的主 Web 目录中名为“web.config”的文件中。

<?xml version="1.0" encoding="UTF-8"?>
 <configuration>
     <system.webServer>
         <staticContent>             
             <remove fileExtension=".xml"/>
      <remove fileExtension=".svg" />
      <remove fileExtension=".ttf" />
      <remove fileExtension=".eot" />
      <remove fileExtension=".woff" />
      <remove fileExtension=".json" />
      <remove fileExtension=".otf" />
      <remove fileExtension=".mp4" />
      <remove fileExtension=".zip"/>
      <remove fileExtension=".eps"/>
      <remove fileExtension=".pdf"/>
      <mimeMap fileExtension=".pdf" mimeType="application/pdf" />
      <mimeMap fileExtension=".zip" mimeType="application/zip"/>
      <mimeMap fileExtension=".eps" mimeType="application/octet-stream"/>
      <mimeMap fileExtension=".json" mimeType="application/json" />
      <mimeMap fileExtension=".otf" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
      <mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
      <mimeMap fileExtension=".woff" mimeType="application/font-woff" />
      <mimeMap fileExtension=".ttf" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
      <mimeMap fileExtension=".xml" mimeType="text/xml" />
      <mimeMap fileExtension="." mimeType="application/pkcs7-mime"/>
         </staticContent>
     </system.webServer>
 </configuration>

值得注意的是,正确地提供没有扩展名的文件 - 但是 - 正如我们所理解的 - 苹果仍然需要另外两个步骤。(1) 您的服务器必须获得 SSL 证书,以便它可以通过 HTTPS 提供该文件(在 GoDaddy 上每年购买约 60 美元);(2) 您的服务器还必须对 apple-app-site-association 文件进行代码签名(在 GoDaddy 上大约 150 美元/年可下载可对文件进行代码签名的证书。)

于 2016-07-11T10:08:47.700 回答