Powershell设置DefaultSite的asp限制

时间:2017-07-20 16:45:15

标签: asp.net powershell iis

我一直在尝试构建一个PowerShell脚本来构建应用程序池并在IIS中设置正确的限制以避免手动执行,但我无法弄清楚如何调整默认站点中的最大请求实体主体限制#39 ; s限制属性。我发现了一些CMD示例:

appcmd set config /section:asp /maxRequestEntityAllowed: int

但我没有appcmd,而且我真的更愿意使用powershell这样做,因为我已经能够使用webadministration模块创建和更新其他IIS设置 EX

[string]$Account = $cred.UserName
[string]$AccountPW = $cred.Password | ConvertFrom-SecureString

If(!(Get-Module WebAdministation))
{
    import-module WebAdministration
}

$iisAppPoolPath = "IIS:\AppPools\TEST"

$oappPool = New-Item $iisAppPoolPath 
$oappPool | Set-ItemProperty -name "enable32BitAppOnWin64" -Value "true"
$oappPool | Set-ItemProperty -Name "managedRuntimeVersion" -Value "v4.0"
$oappPool | Set-ItemProperty -Name "managedPipelineMode" -Value "Classic"
$oappPool | Set-ItemProperty -name "processModel" -value @{userName=$Account;password=$AccountPW;identitytype=3}

我一直在阅读一些不同的文章和参考文献,但我似乎无法弄清楚这一部分。我可以获得默认网站,但我不确定我需要设置哪个元素才能更新值

Get-Item 'IIS:\Sites\Default Web Site\'

任何建议都将不胜感激

我也试过了,但它没有用

Set-WebConfigurationProperty /system.webserver/asp/limits -name maxRequestEntityAllowed -value "10485760"

参考:http://www.zerrouki.com/classic-asp-upload-file-fails-200kb/

2 个答案:

答案 0 :(得分:0)

我明白了。它不使用set-item函数,但它起作用:

set-WebConfigurationProperty -location 'Default Web Site' -filter "system.webServer/asp/limits" -name "maxRequestEntityAllowed" -value 123456789

位置参数和“标记差异

答案 1 :(得分:0)

类似这样的方法可以设置所有站点:

Import-Module "WebAdministration"
Get-ChildItem IIS:\Sites | select -expand Name | % { 
    Set-WebConfigurationProperty -Location $_ -Filter "system.webServer/asp/limits" -Name "maxRequestEntityAllowed" -Value 40000000
}