我有一个Web应用程序,我试图使用MSDeploy.exe(Web Deploy 2)在Web服务器上部署它
我尝试过4种情况:
通过VS2010发布方法,设置如下:
发布方法:Web部署
服务网址:https://开头MyServerName:8172/MsDeploy.axd
网站/应用:MyWebSiteName
允许不可信:检查
用户名:MyUserName输入
密码:MYPASSWORD
此方法的工作就好了.
在MyServerName机器上,我运行Web管理服务; 我有一个网站MyWebSiteName,一个应用程序MyWebAppName和MyUserName是一个IIS管理器.
通过VS2010发布方法,设置如下:
发布方法:Web部署
服务网址:https://开头MyServerName:8172/MsDeploy.axd
网站/应用:MyWebSiteName/MyWebAppName
允许不可信:检查
用户名:MyUserName输入
密码:MyPassword输入
此方法的工作就好了.
通过MSDeploy.exe命令行(PowerShell脚本内)
$源= "的contentPath = '...._ PublishedWebsites\MyWebApp'"
$目的地="的contentPath = MyWebSiteName,计算机名='https://开头FC-wapps审:8172 /MsDeploy.axd?Site=WebSiteTest',Username=MyUsername,Password=MyPassword,AuthType=basic"
MSDeploy -verb:同步-源:$来源-dest:$目的地-allowUntrusted
这种方法也能正常工作.
通过MSDeploy.exe命令行(PowerShell脚本内)
$源= "的contentPath = '...._ PublishedWebsites\MyWebApp'"
$目的地="iisApp = MyWebSiteName/MyWebAppName,计算机名='https://开头FC-wapps审:8172/MsDeploy.axd网站= WebSiteTest/MyWebAppName",用户名= MyUserName输入,密码= MyPassword输入,=进行AuthType基本"?
MSDeploy -verb:同步-源:$来源-dest:$目的地-allowUntrusted
这种方法是行不通的.我收到以下错误.
错误代码:ERROR_USER_UNAUTHORIZED
更多信息:使用Web管理服务连接到目标计算机("MyServerName"),但无法进行授权.确保您使用的是正确的用户名和密码,您所连接的站点是否存在,以及凭据是否代表具有访问该站点权限的用户.
错误:远程服务器返回错误:(401)未经授权.
我一直在寻找什么是实际工作MSDeploy命令方法2层的用途和我一样的东西:
msdeploy.exe
-source:清单="...\MyWebApp.SourceManifest.xml"
-dest:汽车,计算机名=的"https: //MyServerName:8172/MsDeploy.axd?site=WebSiteTest',UserName='MyUsername',Password='MyPassword',IncludeAcls='False',AuthType='Basic"
-verb:同步
-disableLink:AppPoolExtension
-disableLink:ContentExtension
-disableLink:CertificateExtension
-skip:对象名= 'dirPath',absolutepath = '...\$的App_Data'
-setParam:一种= 'ProviderPath',范围= 'IisApp',匹配= '^ ...\PackageTmp $',值= WebSiteTest/WebAppTest
-setParam:一种= 'ProviderPath',范围= 'SETACL',匹配= '^ ..\PackageTmp $',值= WebSiteTest/WebAppTest
-allowUntrusted
-retryAttempts = 2
现在,这似乎并没有被任何接近我在方法4中使用的东西.我尝试自己运行它没有成功,但我认为我无法正确地重新创建所有这些参数.
所以我的问题是:
- 我在方法4中做错了什么?
- 如何使用MSDeploy.exe命令在IIS7中将Web应用程序部署为网站应用程序
在此先感谢您对
Iulian 的帮助
小智 7
我遇到了和你一样的问题.我只使用https:// computername:8172/msdeploy.axd?site = {websitenameonly}中的网站名称解决了这个问题 .然后使用-setParam IIS Web Application Name = {your web application name here}在参数中设置webapplication路径,或使用参数文件.一切都很好.
似乎只需要站点查询字符串值来授权请求.我没有找到任何可能解决此问题的任何其他查询字符串参数的MS的权威文档.但我实际测试了2个案例.1)在IIS 7.5中部署到网站,此参数是必需的.2)部署到网站下的Web应用程序,此参数实际上是可选的,但如果要包含它,则它必须是根网站.
你实际上在这里回答了你自己的问题,但可能没有意识到.
| 归档时间: |
|
| 查看次数: |
8100 次 |
| 最近记录: |