簡體   English   中英

Web Deploy可以創建IIS站點和應用程序池嗎

[英]Can Web Deploy create IIS Site and Application Pool

我正在致力於部署過程的自動化,我需要找到一種構建和部署asp.net網站的方法。

在此之上,我還想為新創建的IIS創建IIS站點和應用程序池(如果尚不存在)。

Web Deploy是否有可能(或者是否有更好的方法/工具/方法來實現這些目標?)

考慮使用Miceosoft.Web.Administration命名空間中的ServerManager類。 具體來說,是ApplicationPools和Sites屬性。 例如,

ServerManager sm = new ServerManager();
Site site = serverMgr.Sites.Add(“MySiteName”, “C:\\inetpub\\wwwroot”, 8080);
sm.ApplicationPools.Add(“MyAppPool”);
sm.CommitChanges()

有關更多信息,請參見https://msdn.microsoft.com/zh-cn/library/microsoft.web.administration.servermanager(v=vs.90).aspx

希望這可以幫助。

還有MSBuildExtensionPack:

https://github.com/mikefourie/MSBuildExtensionPack

我想象說,msbuild-family-of-actions使用Microsoft.Web.Administration命名空間來發揮其神奇作用,從而在IIS 7中創建新網站,並且腳本看起來像這樣(沒有在我自己的服務器上測試過) 尚未 ):

<Target Name="ProvisionIIS7WebSite" DependsOnTargets="CreateDeploymentNumber">
  <PropertyGroup>
    <WebSiteName>$(BaseDeploymentName)$(DeploymentNumber)</WebSiteName>
    <PortNumber>$(DeploymentNumber)</PortNumber>
  </PropertyGroup>

  <ItemGroup>
    <WebApplication Include="/MyApp">
      <PhysicalPath>$(WebSitePath)</PhysicalPath>
    </WebApplication>
    <VirtualDirectory Include="/MyVdir">
      <ApplicationPath>/MyApp</ApplicationPath>
      <PhysicalPath>$(WebSitePath)</PhysicalPath>
    </VirtualDirectory>
  </ItemGroup>

  <!-- Create new site -->
  <MSBuild.ExtensionPack.Web.Iis7Website TaskAction="Create"
    Name="$(WebSiteName)"
    Port="$(PortNumber)"
    Path="$(WebSitePath)"
    AppPool="$(WebSiteAppPool)"
    Applications="@(WebApplication)"
    VirtualDirectories="@(VirtualDirectory)">
    <Output TaskParameter="SiteID" PropertyName="WebSiteID" />
  </MSBuild.ExtensionPack.Web.Iis7Website>
  <Message Text="Created website with ID $(WebSiteID)" />
</Target>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM