我正在使用Web Deploy在Visual Studio 2010中发布ASP.NET MVC网站.
在此发布后,有没有办法在服务器上运行.bat文件?
ASP.NET 4.5中的新pubxml文件肯定是朝着正确方向迈出的一步.我也喜欢msdeploy对parameters.xml文件的支持(即使它们有时不像我想的那么强大).现在,我如何组合msdeploy参数和pubxml文件?我希望pubxml文件允许我提供类似的设置
<ParametersFile>productionParameters.xml</ParametersFile>
或者在我的production.pubxml文件中类似的东西,包含web.config在发布到生产环境时要合并的值.这是可能的还是我必须回到我自己的方式来确定参数文件并msdeploy使用-setParamFile ="productionParameters.xml"进行调用?
我仍然试图了解MSBuild的事情.目前,我正在使用PackageWeb-Nuget-Package(视频演示)中生成的脚本来部署via powershell脚本.我已经尝试了几天了,它似乎工作.但是"突然"生成的web.config中的连接字符串被标记化,而不是我看到的连接字符串
connectionString="$(ReplacableToken_DefaultConnection-Web.config Connection String_0)
Run Code Online (Sandbox Code Playgroud)
我"突然"写道,因为我无法将这个(对我来说是新的)行为与我在前几个小时里完成的任何事情联系起来.
总结一下:从包的部署工作正常,也正在应用正确的配置转换,但我最终得到了这个标记化的连接字符串.
我意识到如果我插入,我可以解决这个问题
<AutoParameterizationWebConfigConnectionStrings>false</AutoParameterizationWebConfigConnectionStrings>
Run Code Online (Sandbox Code Playgroud)
到PropertyGroup(我只是把它放到Nuget-Package创建的生成的目标文件中)
但是我真的不喜欢这个,不得不将这个附加值插入到可能需要它的每个项目中; 特别是因为我不知道我首先需要这个调整.昨天它工作,我没有将这个额外的行插入任何项目或目标文件.
所以我希望也许有人知道额外的开关,技巧或设置,这可能会对它的工作方式产生额外的影响.
我们正在尝试ApplicationInsights.config通过 parameters.xml推送 ApplicationInsights 键。该参数不会按照他的方式访问所述文件。
我们构建了一个 webdeploy 包,然后将其发布到不同的环境中。所有其他参数都用于 web.config 并按预期工作。
parameters.xml 中的条目:
<parameter name="InsightInstrumentationKey" description="InsightInstrumentationKey">
<parameterValidation kind="AllowEmpty" />
<parameterEntry kind="XmlFile"
scope="\\ApplicationInsights.config$"
match="/ApplicationInsights/InstrumentationKey/text()" />
</parameter>
Run Code Online (Sandbox Code Playgroud)
该ApplicationInsights.config文件:
<?xml version="1.0" encoding="utf-8"?>
<ApplicationInsights xmlns="http://schemas.microsoft.com/ApplicationInsights/2013/Settings" schemaVersion="2014-05-30">
<TelemetryChannel>
<DeveloperMode>false</DeveloperMode>
</TelemetryChannel>
<TelemetryModules>
[...]
</TelemetryModules>
<AccountId></AccountId>
<InstrumentationKey>HERE GOES THE PARAMETER</InstrumentationKey>
<ContextInitializers>
[...]
</ContextInitializers>
<TelemetryInitializers>
[...]
</TelemetryInitializers>
</ApplicationInsights>
Run Code Online (Sandbox Code Playgroud)
我现在想知道是否有可能有一个与“web.config”不同的 scrope?
我们在Angular 5上有一个带有ASP.NET后端的单页应用程序,当我们编译它时,Angular的发布内容被输出到文件夹"Project\dist".
这在本地开发机器上运行良好,但所有dist文件都随机分配了不同的名称,例如:
当我们使用Web发布部署到登台或生产时,一切都很好地传输,并且发布配置文件中的自定义文件夹被包含和发布.
但是,在目标服务器(暂存或生产)上,这些旧的,随机命名的文件和旧的(不再使用的)文件夹仍然存在.这导致在登台和生产服务器上累积了数百个数百个旧文件(来自旧的Web部署).每次我们使用webdeploy推送更新时,我都需要一种自动删除它们的方法.
理想情况下,工作流程是:
这是我们当前发布配置文件的编辑版本:
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is used by the publish/package process of your Web project. You can customize the behavior of this process
by editing this MSBuild file. In order to learn more about this please visit http://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>MSDeploy</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<MSDeployServiceURL>staging.example.com</MSDeployServiceURL>
<DeployIisAppPath>Project</DeployIisAppPath>
<RemoteSitePhysicalPath />
<SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
<EnableMSDeployBackup>False</EnableMSDeployBackup>
<UserName>WebDeployUser</UserName>
<PublishDatabaseSettings> …Run Code Online (Sandbox Code Playgroud) 类似的问题已经被问过很多次了,但大多数答案都是旧的,可能只是部分适用。此问题特定于使用“Azure App Service Deploy”任务版本 3.* 通过 Azure DevOps/Azure Pipelines 使用 Web 部署。
无法将 Web 包部署到应用服务。
选择重命名锁定文件选项再次尝试部署应用服务。
错误代码:ERROR_FILE_IN_USE
更多信息:Web Deploy 无法修改目标上的文件“VBCSCompiler.exe”,因为它被外部进程锁定。为了使发布操作成功,您可能需要重新启动应用程序以释放锁定,或者在下一次发布尝试时使用 .Net 应用程序的 AppOffline 规则处理程序。了解更多信息:http : //go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE。
有两个建议:
为了避免错误代码为 ERROR_FILE_IN_USE 的部署失败,如果 .NET 应用程序针对 Windows 上的 Web 应用程序,请确保启用“重命名锁定文件”和“使应用程序脱机”。对于零停机部署,请使用插槽交换。
剩下的就是建议 2:重新启动服务。出于很多原因,我宁愿不必回到这一点。
为什么1和3还不足以成功完成部署?
Azure DevOps Build 工件放置包含以下文件:
这些文件是单个解决方案的构建输出的结果。
我想将 Project1 Web 应用程序部署到 Azure。
我设置了一个发布定义并向其添加了一个部署 Azure Web 服务任务。任务包文件或文件夹的路径包含与一个文件 Project1.zip 完全匹配的值。我没有在任何地方指定任何 *.deploy.cmd 文件。
当发布执行时,它在该任务上失败并出现错误: 多个包与指定模式匹配:*.deploy.cmd。请限制搜索模式。
我发现的唯一解决方法是删除 2.deploy.cmd 以便部署 dask 不会使用指定的搜索模式找到多个文件。但我不想删除它,特别是因为我也想最终部署 Project2。如何解决这个问题呢?
我有一个使用 ReactJS 构建的应用程序,但我使用一个假 API (json-server) 来处理我的数据。
因此,在运行“npm start”来运行应用程序之前,我必须运行“json-server server.json -p 3333”来运行服务器,但我无法使其在 Netlify 上运行。
有人知道这是否可能吗?
谢谢!
deployment web-deployment continuous-deployment webdeploy netlify
我正在为WMSvc-IIS的Web管理服务而困扰。
我正在尝试从Visual Studio部署网站,这使我丧命。实际上,这杀死了我团队中除我以外的所有人,但是由于我现在被任命为Web服务器经理,因此我感到很伤心。
当我使用管理Windows帐户进行部署时,它可以正常工作,这至少意味着我应该在途中,但不适用于非管理员或IIS管理器帐户的其他帐户。
让我告诉你我做了什么:
已安装WMSvc。
看似配置它。在“我的服务器/管理服务”下,设置为:
Enable Remote Connections
Windows credentials or IIS Manager credentials
Access for unspecified clients - allow.
Run Code Online (Sandbox Code Playgroud)添加了用户MYUSER作为IIS管理器帐户。还添加了一个Windows帐户MYSERVER \ MYUSER
在MYSERVER /管理服务委托下添加了规则
Deploy Applications with Content - and added user *
Set Permissions - and added user *
Run Code Online (Sandbox Code Playgroud)毕竟,它可以通过我的Windows管理员帐户运行,但不能通过其他帐户运行。Visual Studio报告401未经授权。在我关注的文章中,“故障排除”下有以下引用:
用户尝试连接到网站时收到401未经授权的错误。o原因:此错误来自WMSVC,通常是用户名/密码错误,或者是因为用户无权访问网站。o解决方案:验证用户名/密码,并且用户有权访问该网站。
但老实说,我不知道我现在做错了什么。有任何想法吗?
感谢您的任何答案。
permissions iis-7 visual-studio http-status-code-401 webdeploy
我正在Visual Studio 2012下开发ASP.NET Web窗体应用程序.我正在使用Web Deploy和Publish Web对话框进行应用程序部署.我正在尝试使用更新数据库功能部署数据库模式.我输入了一个指向远程SQL Server的连接字符串.如果单击"测试连接"按钮,Visual Studio会说测试连接成功.

然后我转到预览选项卡,然后单击预览数据库链接.

在打开的窗口中,我收到了消息
Web部署任务失败.(无法生成部署脚本.无法连接到目标服务器.有关详细信息,请访问:http: //go.microsoft.com/fwlink/?LinkId = 221672 #ERROR_EXECUTING_METHOD.)
其他项目文件正常部署.我可以使用SQL Server Management Service连接到SQL Server.但为什么数据库无法更新?我试图禁用服务器防火墙 - 没有运气.
更新
如果我sa在DatabaseEntitiesRaw的连接字符串中使用SQL Server身份验证和登录而不是Windows身份验证,则一切正常.但Windows身份验证适用于SSMS,我想使用它,因为我只部署在公司域内的计算机上.dbDacFx不能与Windows身份验证一起使用吗?
asp.net database-deployment webdeploy sql-server-2012 visual-studio-2012
webdeploy ×10
msdeploy ×3
asp.net ×2
asp.net-mvc ×2
azure-devops ×2
msbuild ×2
angular ×1
asp.net-4.5 ×1
deployment ×1
iis ×1
iis-7 ×1
netlify ×1
permissions ×1
publishing ×1