如何使用 msdeploy 在远程服务器上部署现有网站
How to use msdeploy to deploy an existing website on remote server
我已经在 Windows 服务器 2012 上的 IIS 上创建了一个网站 "MyWebsite",物理路径是 C:\builds\MyWebsite\wwwroot
,目录 [=] 下还有 1 个其他文件夹 approot
13=],这也是制作网站所必需的运行。我想做的是:
- 在远程服务器中创建一个新文件夹
C:\builds\MyWebsiteNewBuild
,用于放置我的新版本;
- 将我的新构建
D:\Release\PublishOutput
从我的本地机器转储到远程服务器,发布输出有 2 个子文件夹:wwwroot
和 approot
;
- 将 "MyWebsite" 的物理路径更改为新创建的文件夹
C:\builds\MyWebsiteNewBuild\wwwroot
,然后重新启动服务。
我是msdeploy新手,搜索了一下好像可以用
msdeploy.exe -verb:dump-source:contentPath="D:\Release\PublishOutput" -dest:contentPath="C:\builds\MyWebsiteNewBuild",computerName="https://**.**.**.**/MsDeploy.axd",userName='administrator',password="*****",authType='Basic' -allowUntrusted
将我的新构建转储到远程服务器的目标文件夹,但是其他要求,例如更改我现有网站的物理路径,我不知道该怎么做。
您可以使用清单通过 WebDeploy 使用 appcmd 更改网站路径。
<runcommand path="%windir%\system32\inetsrv\appcmd set app /app.name:"Default Web Site/app12" /[path='/'].physicalPath:C:\temp\app12" waitInterval="5000"/>
以下post描述了如何基于清单创建自定义 WebDeploy 包:
http://www.dotnetcatch.com/2016/06/23/deploy-an-asp-net-website-not-web-application-with-msdeploy/
我已经在 Windows 服务器 2012 上的 IIS 上创建了一个网站 "MyWebsite",物理路径是 C:\builds\MyWebsite\wwwroot
,目录 [=] 下还有 1 个其他文件夹 approot
13=],这也是制作网站所必需的运行。我想做的是:
- 在远程服务器中创建一个新文件夹
C:\builds\MyWebsiteNewBuild
,用于放置我的新版本; - 将我的新构建
D:\Release\PublishOutput
从我的本地机器转储到远程服务器,发布输出有 2 个子文件夹:wwwroot
和approot
; - 将 "MyWebsite" 的物理路径更改为新创建的文件夹
C:\builds\MyWebsiteNewBuild\wwwroot
,然后重新启动服务。
我是msdeploy新手,搜索了一下好像可以用
msdeploy.exe -verb:dump-source:contentPath="D:\Release\PublishOutput" -dest:contentPath="C:\builds\MyWebsiteNewBuild",computerName="https://**.**.**.**/MsDeploy.axd",userName='administrator',password="*****",authType='Basic' -allowUntrusted
将我的新构建转储到远程服务器的目标文件夹,但是其他要求,例如更改我现有网站的物理路径,我不知道该怎么做。
您可以使用清单通过 WebDeploy 使用 appcmd 更改网站路径。
<runcommand path="%windir%\system32\inetsrv\appcmd set app /app.name:"Default Web Site/app12" /[path='/'].physicalPath:C:\temp\app12" waitInterval="5000"/>
以下post描述了如何基于清单创建自定义 WebDeploy 包:
http://www.dotnetcatch.com/2016/06/23/deploy-an-asp-net-website-not-web-application-with-msdeploy/