【问题标题】:How to create app pool and virtual directory for IIS in Powershell如何在 Powershell 中为 IIS 创建应用程序池和虚拟目录
【发布时间】:2018-02-25 03:32:14
【问题描述】:

我正在尝试使用 IIS 7 或 8 创建一个用于创建应用程序池和虚拟目录的 powershell 脚本(不确定我有哪一个,我使用的是 Windows Server 2012 R2)

这里是我用来创建名为 .Net v2.0 的应用程序池的代码

Import-Module WebAdministration 
New-Item –Path IIS:\AppPools\.Net v2.0

但我收到一条错误提示

PS IIS:\Sites> Import-Module WebAdministration New-Item –Path IIS:\AppPools.Net v2.0 未定义对象类型 .Net。参数名称: nodeName At line:2 char:1 + 新项目 – 路径 IIS:\AppPools.Net v2.0 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [], ArgumentException + FullyQualifiedErrorId : NewItemDynamicParametersProviderException

我觉得可能是因为 Net 和 v2.0 之间的空间

也没有为此的物理路径,所以我不确定如何为多个应用程序池创建一个脚本,其中一些使用 v2.0 和 v4.0,一些使用集成和经典的管道有些正在使用物理路径,而有些则没有。如果有人能指出我正确的方向?我不使用网站只是应用程序池和虚拟目录。

谢谢!

编辑 我能够通过使用

来解决这个问题
[system.reflection.assembly]::Loadwithpartialname("Microsoft.Web.Administration")
$servermgr = New-Object Microsoft.web.administration.servermanager
$servermgr.ApplicationPools.Add(".NETExample")
$servermgr.CommitChanges()     

【问题讨论】:

  • 在引号中试试 New-Item –Path 'IIS:\AppPools\.Net v2.0' PowerShell 将假定参数值是字符串,因此为了方便您通常可以不使用引号,但如果必须在其中有空格,请使用引号。
  • 谢谢你,我实际上得到了它使用不同的代码。我继续在 EDIT 下发布了上面的解决方案。

标签: powershell iis iis-7 application-pool


【解决方案1】:

首先运行Import-Module WebAdministration,这将允许您在 IIS 下创建路径:\

然后:

$iisAppPoolName = ".Net v2.0"
$iisAppPoolDotNetVersion = "v2.0"
$iisAppName = "Net 2"
$directoryPath = "E:\Net2"

cd IIS:\AppPools\

New-Item $iisAppPoolName

查看本站:Create IIS App Pool

【讨论】:

  • 当我运行它时,我得到这个错误 Undefined object type .Net v2.0。参数名称:nodeName At line:9 char:1 + New-Item $iisAppPoolName + ~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [],ArgumentException + FullyQualifiedErrorId:NewItemDynamicParametersProviderException
  • 让我们尝试以下操作:首先导入模块:Import-Module WebAdministration 然后,Get-ChildItem IIS:\Sites 并粘贴输出。
  • PS IIS:\Sites\> Get-ChildItem IIS:\Sites Name ID State Physical Path Bindings
  • ---- -- ----- ------------- -------- 默认网站 1 已启动 %SystemDrive%\inetpub \wwwroot http *:80: https *:443: sslFlags=0 net 2 2 E:\Net2
  • PS IIS:\Sites\> New-WebAppPool -Name ".Net v2.0"
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多