原创文章:欢迎转载,转载时请保留作者名及出处
作者:jacksonluo
一:IIS的服务器前期配置(其他的安全就不提了) (以 freeshare.com.cn为例 )
1.创建该域的(freeshare.com.cn)计算机用户名,并设置一个安全密码
2.创建该域的目录文件夹如(D:/Inetpub/freeshare.com.cn)
3.设置目录访问权限,freeshare.com.cn对该目录完全控制(提供匿名用户访问该网站)
4.创建一个该域名的描述(公司名) 的单独应用进程池,为每一个虚拟主机创建独立的应用程序进程池,保个别网站的问题不会影响整台服务器的运行。创建进程池时可以单独设定用户名和密码并设置CPU,连接数等。这里采用的是默认的。
5.创建一个虚拟主机,并选择上面所创建的应用进程池,在目录安全性中选择匿名用户freeshare.com.cn,并设置与计算机创建freeshare.com.cn用户名的密码一致,必须一致,否则无法访问该网站。
OK,这个就对每个虚拟主机要做的,那么这些是不是需要全部的人工的去完成呢?答案是否定的,WINDOWS下也可以实现脚本编程哦,(呵呵我原来也是不知道的)
那么即然可以不用去手工完成,用什么呢?用VBSCRIPT脚本吧。
二:用脚本完成上述创建虚拟主机的动作
保存为createsiglewebsite.vbs
代码如下:
Dim SiteNum,IPAddr,PortNum,LenComputer,WebServerComment,LogDirectory
Dim user_password,GroupName,tmpFolder,UserNameComp,WebServerAutoStart
Dim WebAnonymousUserName
WebServerComment="公司名"'网站描述、计算机用户描述及全名采用这个变量
UserNameComp="freeshare.com.cn"'计算机用户名及用户目录采用这个变量
HostName = ":80:www.freeshare.com.cn"'虚拟主机站点主机名
WebAnonymousUserName = getComputer()&"/"&UserNameComp'虚拟主机匿名用户(前面加了本地计算机名)
user_password = "**********"'计算机用户和匿名用户密码。
GroupName = "Guests"'计算机用户所在的组
IPAddr = ""'计算机IP地址,可以为空
tmpFolder = "D:/inetpub/"&UserNameComp'目标目录
LenComputer = Len(getComputer())+1'计算机名+'/'的长度
PortNum = "80"'虚拟主机端口
WebServerAutoStart = "true"'创建虚拟主机后是否运行true和false
LogDirectory = ""'日志目录
'检测是否存在该用户的计算机帐号
If Not checkUser(UserNameComp) Then
'添加该计算机用户帐号
AddUser getComputer(),UserNameComp,user_password,WebServerComment,WebServerComment,GroupName
Else
Wscript.echo "该计算机用户名也存在.............."
End If
'创建用户主目录
CreateFileDirectory(tmpFolder)
'修改用户主目录的访问权限
SetNTFSDirectoryPerssion(UserNameComp)
'创建应用进程池
createAppPool WebServerComment
'创建虚拟主机站点
CreateWebSite getComputer(),IPAddr,HostName,tmpFolder,LogDirectory,WebServerComment,UserNameComp,user_password,WebServerAutoStart