iOS分发-plist的itms服务协议链路中的参数

iOS分发-plist的itms服务协议链路中的参数,ios,plist,protected,Ios,Plist,Protected,我想在itms服务链接中传递用户ID和密码,以便可以访问受保护的plist 为了澄清,在下面的链接中,无法直接访问plist,因为访问需要输入用户ID和密码,以便可以访问plist <a href="itms-services://?action=download-manifest&url=http://example.com/app.plist"> 目前,上面的链接给出了一个错误 无法连接到example.com 我正在Windows IIS服务器上安装IPA和PLI

我想在itms服务链接中传递用户ID和密码,以便可以访问受保护的plist

为了澄清,在下面的链接中,无法直接访问plist,因为访问需要输入用户ID和密码,以便可以访问plist

<a href="itms-services://?action=download-manifest&url=http://example.com/app.plist">

目前,上面的链接给出了一个错误

无法连接到example.com


我正在Windows IIS服务器上安装IPA和PLIST

我必须将.ipa和.plist的MIME类型添加到IIS服务器,以便iPad能够下载应用程序

对于IIS,请打开IIS管理器。右键单击“服务器(本地计算机)”
选择属性 单击“MIME类型” 单击“新建…”

添加以下MIME类型:

.IPA   - application/octet-stream 
.PLIST -  text/plain.

您需要确保可以访问.plist和.ipa。我们对文件进行了身份验证cookie保护,iTunes无法安装,完全相同的错误是“无法连接到mydomain.com”。通过移除安全保护,它最终起到了作用。

对于任何对动态生成plist感兴趣的人来说,以下示例是PHP:

$appUrl='itms-services://?action=download-manifest&url=http://server/iOSpList.php?'.
                'url%3D'.$app['url'].
                '%26bundle%3D'.$app['bundle'].
                '%26version%3D'.$app['version'].
                '%26name%3D'.$app['name'];

另外,我认为.plist mime类型应该是
application/xml。

我的服务器上有PHP,无法访问服务器mime配置。所以我这样做了:

app.plist.php

app.ipa.php


由于某种原因,使用没有起作用。但是确实如此。

这些mime类型对于其他web服务器平台也很有用。感谢您必须重新启动服务器才能获取新的MIME类型?如果您无法更改服务器MIME类型,但您有幸拥有php,请检查我的答案。@Richard我不必重新启动服务器(IIS 8)。如何将
与上面的php脚本链接?我已经设置了html链接。我还创建了上述2个php文件。但不确定如何将html链接连接到php脚本?只需在那里添加
.php
即可引用该文件。在您的情况下:
<?php
header('Content-type: application/xml');

$file = fopen("app.plist", "r");
while(!feof($file)){
    $line = fgets($file);
    print str_replace(".ipa", ".ipa.php", $line);
}
fclose($file);
?>
<?php
header('Content-type: application/octet-stream');

$file = fopen("app.ipa", "r");
while(!feof($file)){
    $line = fgets($file);
    print $line;
}
fclose($file);
?>