我正在为客户开发一个 Windows .NET 4 桌面应用程序,考虑使用ClickOnce从客户网站部署它。 我还计划从他们的网站部署应用程序版本升级。
我已经阅读了许多关于 Stack Overflow 上与 ClickOnce 相关的问题,但仍不清楚我需要做些什么才能使用 ClickOnce 将应用程序发布到 Web 服务器上。
我的客户需要在他们的 Web 服务器上设置什么,我才能使用 ClickOnce 发布我的应用程序? 需要什么样的访问权限? 他们需要设置部署目录吗?
引用Brian Noyes在ClickOnce部署方面的优秀著作使用ClickOnce进行智能客户端部署:使用ClickOnce部署Windows Forms应用程序:
服务器必须能够通过HTTP或UNC文件路径返回部署清单、应用程序清单和单个应用程序文件的文件请求。
服务器必须在HTTP标头中返回适当的MIME文件类型,以便在客户端上正确处理它们。
因此,您甚至不需要拥有Windows Server,您可以将其托管在Apache服务器上(许多人都这样做)。
我的公司设置了一个文件夹(不在Web服务器的根目录下),并授予我将任何内容FTP到该文件夹的权限。然后有一个HTTP地址指向该文件夹。他们比让我具有HTTP写入根Web服务器的访问权限更加舒适,我完全同意。
因此,当我发布时,我将发布文件位置设置为类似于ftp://myserver.mycompany.com/myvirtualfolder/myappname/。
然后,我将安装URL设置为类似于http://myserver.mycompany.com/myappname/,
它指向myvirtualfolder
。这也是客户访问的链接。