如何在PowerShell中启用URL Rewrite规则?
美国、香港服务器
如何在PowerShell中启用URL Rewrite规则?
09-17 来源:
# PowerShell 启用 IIS URL Rewrite 规则
# 加载IIS模块
Import-Module WebAdministration
# 定义站点名、规则名称,自行修改
$siteName="Default Web Site"
$ruleName="HTTP转HTTPS"
## 1. 启用指定一条重写规则
Set-WebConfigurationProperty -PSPath "IIS:\Sites\$siteName" `
-Filter "/system.webServer/rewrite/rules/rule[@name="$ruleName"]" `
-Name "enabled" -Value "True"
## 2. 查看站点全部重写规则(检查启用状态)
Get-WebConfiguration -PSPath "IIS:\Sites\$siteName" -Filter "system.webServer/rewrite/rules/rule" | Select name,enabled
`enabled=True` = 已启用;`enabled=False` = 禁用
## 3. 启用后必须回收应用程序池使配置生效
$poolName = (Get-WebSite $siteName).applicationPool
Restart-WebAppPool $poolName
## 4. 批量启用站点内**所有**rewrite 规则
$rules = Get-WebConfiguration -PSPath "IIS:\Sites\$siteName" -Filter "system.webServer/rewrite/rules/rule"
foreach($r in $rules){
Set-WebConfigurationProperty -PSPath "IIS:\Sites\$siteName" `
-Filter "/system.webServer/rewrite/rules/rule[@name="$($r.name)"]" `
-Name "enabled" -Value "True"
}
Restart-WebAppPool $poolName
## 5. 操作全局根站点(服务器级别 rewrite,不是站点)
Set-WebConfigurationProperty -PSPath "IIS:\" `
-Filter "/system.webServer/rewrite/rules/rule[@name="$ruleName"]" `
-Name "enabled" -Value "True"
## 配套:禁用规则
Set-WebConfigurationProperty -PSPath "IIS:\Sites\$siteName" `
-Filter "/system.webServer/rewrite/rules/rule[@name="$ruleName"]" `
-Name "enabled" -Value "False"
Restart-WebAppPool $poolName
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快