升学规则
科技特长生辅导
招生简章
赛事辅导
iis/" target="_blank">iis安装栏目介绍如何使用iis api禁用ip访问
免费推荐:IIS安装
这个类是基于 Microsoft.Web.Administration 写的一个简单封装:
PS: Microsoft.Web.Administration 可通过 Nuget 搜索安装。
public class IISAdministration
{
private readonly ServerManager serverManager;
public IISAdministration()
{
serverManager = new ServerManager();
}
public IEnumerable<workerprocess> GetWorkerProcesses()
{
return serverManager.WorkerProcesses;
}
public IEnumerable<string> GetSiteNames()
{
foreach (var item in GetWorkerProcesses())
{
yield return item.AppPoolName;
}
}
public ConfigurationElementCollection GetIpSecurityCollection(string site)
{
return GetConfigurationElementCollection("system.webServer/security/ipSecurity", site);
}
public ConfigurationElementCollection GetConfigurationElementCollection(string sectionName, string site = "")
{
var config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection section;
if (string.IsNullOrWhiteSpace(site))
{
section = config.GetSection(sectionName);
}
else
{
section = config.GetSection(sectionName, site);
}
return section.GetCollection();
}
public void CreateElement(ConfigurationElementCollection section, ConfigurationElement element)
{
section.Add(element);
serverManager.CommitChanges();
}
public void RemoveElement(ConfigurationElementCollection section, ConfigurationElement element)
{
section.Remove(element);
serverManager.CommitChanges();
}
public bool HasBlocked(string siteName, string ip)
{
var ipSecurityCollection = this.GetIpSecurityCollection(siteName);
for (int i = 0; i <p>使用方法:</p>
<pre class="brush:php;toolbar:false">var iisAdministration = new IISAdministration();
iisAdministration.BlockIP("", "192.0.0.1");
注意:
BlockIP个参数为站点名,如果空字符串,则直接添加到 IIS 根路径下的IP屏蔽。
此方法会抛出异常,而且需要管理员权限才可执行。
以上就是如何使用IIS API禁用IP访问的详细内容,更多请关注本网内其它相关文章!
浙公网安备33011002017851号