asp批量导出IIS 6 域名列表

asp批量导出IIS 6 域名列表

     最近估计很多人都碰到和我同样的问题,就是因为众所周知的原因及备案管理,一个没备案直接关服务器,一个黄站直接封机房。现在网站所有域名必需通过备案,以前还松点。但我们服务器100多个,总不能一个一个检查吧,上网搜了下,有个程序稍合适,但导出的是网站域名站点名,我修改为导出域名列表,同时解决了导出一个站点绑定多个域名的问题,更适合自己的应用,原程序无从考究出处,本着开源原则,现把修改后的源码放出来,希望能对大家有用。

    asp导出IIS域名列表使用方法

1.在IIS中导出xml配置文件。可参考下面图片。在网站点右键,选择所有任务,选择保存至一个文件,例如存为iis.xml。



2.把下面程序复制到记事本后,保存为一个asp文件,例iis.asp,然后放在网站一个有执行脚本权限的目录即可执行。同时需要把刚才导出的xml文件放在同目录下。

<%option explicit
dim fso
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
dim ts
Set ts = fso.OpenTextFile(server.MapPath("iis.xml"),1) '修改此处的iis备份文件名即可,同目录下哦
dim content
content= ts.ReadAll

content=Replace(content,chr(13),"")
content=Replace(content,chr(10),"")
content=Replace(content,chr(32),"")
content=split(content,"IIsWebServe")

function getdomain(str)
dim reg,readstr,matches,match1
set reg=new Regexp
reg.Multiline=True
reg.Global=false
reg.IgnoreCase=true
reg.Pattern="ServerBindings(.*)ServerComment"
Set matches = reg.execute(str)
For Each match1 in matches
   readstr=match1.Value
Next
Set reg = Nothing
getdomain=replace(readstr,"ServerBindings=","")
getdomain=replace(getdomain,"""","")
getdomain=replace(getdomain,"ServerComment","")

end function

response.Clear()
dim i
for i=0 to ubound(content)
if instr(content(i),"ServerBindings")>0 then
response.Write Replace(getdomain(content(i)),":80:","<br>")&"<br>"
end if
next
%>


引用通告: 查看所有引用 | 我要引用此文章
Tags: 导出IIS域名列表 asp导出IIS域名
收藏到网摘:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.