.NET 获取IIS中网站名称和属性

本文介绍了使用C#代码遍历IIS服务器,获取站点的详细配置信息,包括站点名称、IP地址、端口号、主机头等,并探讨了如何限制主机头数量的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

None.gif
None.gif        
//遍厉IIS
None.gif
        DirectoryEntry directoryEntry = new DirectoryEntry(@"IIS://localhost/W3SVC");
None.gif        IEnumerator ienum 
= directoryEntry.Children.GetEnumerator();
None.gif        
string HostInfo="";
None.gif        
while (ienum.MoveNext())
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif{
InBlock.gif            DirectoryEntry entrypool 
= (DirectoryEntry)ienum.Current;
InBlock.gif            System.DirectoryServices.PropertyCollection ppC 
= (System.DirectoryServices.PropertyCollection)entrypool.Properties;
InBlock.gif            IDictionaryEnumerator idenum 
= ppC.GetEnumerator();
InBlock.gif            
if (entrypool.SchemaClassName == "IIsWebServer")
ExpandedSubBlockStart.gifContractedSubBlock.gif            
dot.gif{
InBlock.gif                
string[] serverBind = ppC["ServerBindings"][0].ToString().Split(':');//获取网站绑定的IP,端口,主机头
InBlock.gif
                string EnableDeDoc = ppC["EnableDefaultDoc"][0].ToString();
InBlock.gif                
string DefaultDoc = ppC["DefaultDoc"][0].ToString();//默认文档
InBlock.gif
                string MaxConnections = ppC["MaxConnections"][0].ToString();//iis连接数,-1为不限制
InBlock.gif
                string ConnectionTimeout = ppC["ConnectionTimeout"][0].ToString();//连接超时时间
InBlock.gif
                string MaxBandwidth = ppC["MaxBandwidth"][0].ToString();//最大绑定数
InBlock.gif
                string ServerState = ppC["ServerState"][0].ToString();//运行状态
InBlock.gif
                
InBlock.gif                HostInfo 
+= "站台名称:" + ppC["ServerComment"][0].ToString() + "-- 网站IP:" + serverBind[0].ToString() + "--网站端口:" + serverBind[1].ToString() + "--主机头" + serverBind[2].ToString() + "<br>";//获取IIS下所有站点名称
InBlock.gif
                HostInfo += EnableDeDoc + "<br>";
InBlock.gif                HostInfo 
+= DefaultDoc + "<br>";
InBlock.gif                HostInfo 
+= MaxConnections + "<br>";
InBlock.gif                HostInfo 
+= ConnectionTimeout + "<br>";
InBlock.gif                HostInfo 
+= MaxBandwidth + "<br>";
InBlock.gif                HostInfo 
+= ServerState + "<br>";
InBlock.gif                
ExpandedSubBlockEnd.gif            }

ExpandedBlockEnd.gif        }

None.gif        Response.Write(HostInfo);
None.gif        Response.End();
小弟现在在研究IIS,有兴趣的朋友可以一起探讨下...上面只是获取最基本的信息.IIS提供了很多属性,小弟在此没有一一列举..........
小弟遇到一问题:如何在IIS里面限制主机头的最大值,可是IIS属性里面有提供..

转载于:https://www.cnblogs.com/wxukie/archive/2007/05/11/743255.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值