问题标签 [webdeploy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - Web 部署不包括部署中 NHibernate 所需的文件
我正在构建我的部署过程,我遇到了一个非常烦人的问题。
在带有 ASP.NET MVC3 的 .Net4 项目上使用 Visual Studio 2010 Sp1,我想将其部署到 IIS7.5 网络服务器。部署工作正常 - 来自 Visual Studio 和命令行 - 除了这一重要部分:
我在我的 Web 应用程序引用的类库中使用 NHibernate(带有 Fluent NH)。这些是使用 NuGet 安装的,并且在部署时也会显示在服务器上。
但是,这些依赖于其他一些库:
- 城堡核心
- Iesi.Collections
- NHibernate.ByteCode.Castle
这些也由 NuGet 获取,它们在我的类库中被引用,并且引用将“复制本地”设置为 True。但是,在这三个中,只有 Iesi.Collections 实际出现在服务器上!
当然,我可以手动复制它们,但是下次运行部署时,它会删除它们。删除未使用的文件实际上是我想要的,但这些文件不应该属于那个类别!
我能做些什么来让 Web Deploy 尊重这些人是我的应用程序的理想成员这一事实!?
web-deployment - MS Web 部署和后期绑定
我在一个用 VS2010 编写的大型 Web 项目中使用 Castle IoC 容器。我们有后期构建事件,将来自其他项目的后期绑定程序集复制到 Web 应用程序的 bin 文件夹中。我们使用 IIS 来托管项目。我和我的团队传统上为这个项目手动部署了 dll、数据库更改脚本等,但现在正在寻找自动化部署的方法。
我查看了 MS Web 部署,但当然,它不会检测到由 IoC 容器实例化的后期绑定程序集。我想可以将其设置为包含项目文件夹中的所有文件,但这往往会包含不需要的文件,例如自述文件、代码文件等。
我对网络部署还是很陌生。有没有人找到一种集成 web deploy 和 Castle 的好方法,以便它自动获取后期绑定的程序集?除了 MS Web Deploy 之外,还有什么可以做到的吗?
谢谢,大卫
visual-studio-2010 - 在 VS2010 中使用什么工具来自动构建和发布内容?
我正在使用 vs 2010 并且有一个 Web 应用程序项目。我目前在我的项目中使用右键单击“发布”选项,使用“网络部署”选项将整个应用程序发布到运行 msdeploy.axd 的服务器。
我必须多次发布这个项目(100+),每次只需更改 web.config。
我正在研究应该使用什么技术来自动化这个过程。我更喜欢使用标准的 MS 技术。
我应该看看 MSBuild 吗?VS 命令提示符?(这些是一样的吗?)
我应该学习什么技术来最好地自动化这个场景。我正在寻找最标准的方法来做到这一点......
在我的脑海中,我要编写的脚本将:
- 更改 web.config 文件
- 相当于右键单击我的项目,单击发布,使用 web-deploy 选项,然后使用我保存在 Visual Studio 中的 windows 域\用户名 + 密码详细信息将其部署到该服务器
任何帮助表示赞赏。
azure - Azure 中的 Web 部署不会创建发布配置文件?
当我执行为 Windows Azure Web 角色激活 Web 部署的步骤时,它不会创建发布配置文件。这曾经像魅力一样起作用,但现在它不再起作用了。有什么想法吗?
visual-studio - 使用 Visual Studio Web 安装项目在两个不同的虚拟目录中安装两个网站
我试图将两个需要安装在不同虚拟目录中的 Web 项目放在同一个 Web 设置项目中,因为它们密切相关,但它们必须单独运行。
我可以将项目 1 放在一个目录中,将项目 2 放在同一虚拟目录的子目录中。
我尝试在文件系统编辑器中添加一个“Web 自定义文件夹”,并将其中一个输出配置到那里,然后当我运行安装程序时,虚拟目录的文本框显示为空,然后放一些安装失败.
这可以做到吗?如何?
非常感谢。
asp.net - 如何允许非管理员用户使用 web deploy 在 IIS 6 上部署 web 应用程序
我想使用 Web 部署将 Web 应用程序部署到远程服务器上的 IIS 6。我成功地通过服务器的管理员帐户发布,但无法通过非管理员帐户发布。它失败并显示消息:未经授权(401)
关于这个问题,我找到了两个不同的答案。
scott Guthrie 说:“非管理员场景使管理员能够在服务器上配置 Web 部署,然后将部署功能的子集委派给在生产服务器上没有管理员帐户的开发人员”(http://weblogs.asp. net/scottgu/archive/2010/09/13/automating-deployment-with-microsoft-web-deploy.aspx)
特洛伊亨特说,“帐户发布必须在服务器上具有管理员权限”(http://www.troyhunt.com/2010/11/you-deploying-it-wrong-teamcity_24.html)
什么是对的?我希望知道如何通过非管理员帐户在 IIS 6 上使用 Web 部署远程代理服务进行部署。
visual-studio-2010 - Using Web Deploy - Permissions
I am using Web Deploy to deploy my MVC3 applications from Visual Studio 2010.
All goes perfect when I user the Administrator
account of the server in the Web Deploy dialog.
I have a new employee starting. I created a new user on the server. This way, I can disable this user if necessary. I gave Administrator
permissions as a test, but sadly this user was not allowed to deploy to the server.
Can anyone tell me what (minimum) permissions I need to give this user so they can deploy applications from Visual Studio?
visual-studio-2010 - 如何告诉 TFS 部署包含在一个解决方案中的多个 webapps?
我们有一个单一的解决方案,其中包含一个 webapp 项目和一些附带的项目。我们的 TFS 2010 每天晚上都在构建这个解决方案,并将 webapp 部署到 IIS 服务器。它像微风一样运行。
在 TFS 构建定义的 Process 选项卡中,您可以指定“MSBuild Arguments”。这是在我们的构建定义中设置的值(全部在一行中):
这篇博文解释了整个设置:http: //vishaljoshi.blogspot.com/2010/11/team-build-web-deployment-web-deploy-vs.html。
到目前为止,一切都很好。
现在我们添加了第二个 webapp 项目,我们希望每晚也将其部署到同一个 IIS。不幸的是,在这种情况下,该设置不适用。TFS 仅部署一个 webapp。
还有其他人有同样的问题:
当解决方案具有多个 Web 应用程序时 TFS 2010 + MSDeploy
和
Vishal R. Joshi 建议为每个 webapp 项目添加一些属性。现在发布版本将为每个定义了以下属性的 webapp 项目生成 web 包(zip 文件):
好的。但是如何带上 TFS 将每个 webapp 部署到 IIS 上呢?还有其他想法吗?
acl - 使用 Web 部署和 ACL 部署问题
我正在使用 Web Deploy 将 Web 应用程序部署到我的主机。当使用 Publish 命令从 Visual Studio 运行时,它工作正常。当我尝试使用 MSBuild 中的 Web 部署进行部署时,网站变得无法访问,甚至我的 Web 主机的 Web 控制面板也无法再访问该网站。我已经追踪到我认为是网站文件夹的权限。
从 Visual Studio 发布会更新 ACL,网站正常运行,并且 Web 主机的控制面板正常工作(即使之前通过 MSBuild 部署破坏了它)。
以下是从 Visual Studio 运行时的输出:
我发现了一个我认为 Visual Studio 在部署期间使用的文件,其中包含 ACL 信息。它名为myapp.SourceManifest.xml,位于C:\Projects\mywebapp\obj\Release\Package文件夹中。
我的 MSBuild 文件包含执行部署的以下内容:
当我运行 MSBuild 进行部署时,我可以看到正在更新的文件,但没有更新 ACL。
由于不同的配置(测试而不是发布)和mywebapp.SourceManifest.xml文件不同,我的 MSBuild 部署来自不同的文件夹。
不同的mywebapp.SourceManifest.xml文件可能与它有关?我需要做什么才能更新 ACL?
更新
我发现mywebapp.SourceManifest.xml文件中的差异是由我的测试配置的 .csproj 文件中存在以下内容引起的。
我已将其更改为True,现在清单文件在测试和发布配置之间是相同的。
我还发现,当从 Visual Studio 使用 Publish 时,它适用于 Release,但无法用于 Test。所以我现在试图找出导致部署成功或失败的两种配置之间的不同之处。
visual-studio-2010 - 如何使用 web deploy 在 localhost 上使用不同端口部署多个站点
我有一个包含多个集成测试项目和一个 Web 应用程序项目的解决方案。每个集成项目在运行测试时都连接到 Web 应用程序。我希望每个测试项目都能通过自己的数据库连接访问网站。我一直在尝试使用 Visual Studio 中内置的 Web 部署功能。但是,我一直无法弄清楚我需要添加什么到创建的部署包和/或测试项目的构建后事件中,以便在部署时声明网站的绑定端口。例如,我希望集成项目 A 创建和访问位于http://localhost:83的网站,并希望集成项目 B 创建和访问位于http://localhost:82的网站. 有人可以解释一下:
- 我需要做什么部署包吗?
- 在部署包时,我需要为我的集成项目的构建后事件添加什么,以便在构建项目时在正确的端口创建网站?
更新:我想将同一个站点部署到我机器上的两个不同位置,以便我可以同时运行两组集成测试。
更新 2:我研究了 web 部署工具,它允许您在从命令行调用它时指定修改部署内容的参数。但是我发现文档非常混乱。http://technet.microsoft.com/en-us/library/dd568968(WS.10).aspx
更新 3:我希望这些是两个不同的网站,每个都指向自己的数据库。如果可能的话,我想要一个可以使用 msdeploy 部署的包。然后将在每个集成测试项目的构建后事件中调用它。我想从集成项目的构建后脚本中指定连接字符串和部署位置。