怎么在iis里面新建一个站点(c#)
iis里面默认的站点的端口为80,默认目录为c:\interp\wwwroot
我想新建一个站点,怎么建立????
推荐阅读
http://info.edu.sinobnet.com/html/001/001/003/1104.htm
其实很简单,在iis里,在计算机名中右键-->新建站点即可。
可以设置主目录,如果不想象panyee(快乐王子) 上面说得那么复杂,更改主目录和设置一个端口即可。访问时用http://localhost:8080
当然服务器版本的windows才可以建立站点。
directoryentry newvirdir = dirroot.children.add("webtest","iiswebvirtualdir");
newvirdir.invoke("appcreate",true);
newvirdir.commitchanges();
dirroot.commitchanges();
http://www.aspcool.com/lanmu/browse1.asp?id=914&bbsuser=csharp
创建虚拟目录
directoryentry是.net给我们的一大礼物,他的名字我们就知道他的功能--目录入口。使用过adsi的人都知道操作iis,winnt这些时,我们还需要提供他们的path,操作iis时,这个path的格式为:
iis://computername/service/website/directory
computername:即操作的服务器的名字,可以是名字也可以是ip,经常用的就是localhost
service:即操作的服务器,iis中有web,也有ftp,还有smtp这些服务,我们主要是操作iis的web功能,因此此处就是"w3svc",如果是ftp则应是"msftpsvc"
website:一个iis服务中可以包括很多的站点,这个就用于设置操作的站点。他的值是一个数字,默认是1,表示缺省站点,如果有其它,则从1开始依次类推。
directory:不用说,即操作的目录名称,一个站点一般顶层目录为"root",其它目录则是他的孩子。
首先我们获取一个站点的顶层目录:
directoryentry rootfolder = new directoryentry("iis://localhost/w3svc/1/root");
如果我们创建这个对象是没有发生异常,则表示这个目录是真实存在的。
下面我们来添加新的虚拟目录,比如我们要加的是"aspcn":
directoryentry newvirdir = rootfolder.children.add("aspcn","iiswebvirtualdir");
newvirdir.invoke("appcreate",true);
newvirdir.commitchanges();
rootfolder.commitchanges();
创建目录的思路很简单,即在根目录的子集(rootfolder.children)中再添加一条记录,这里使用的是directoryentries类中的add方法,它返回的是一个directoryentry,表示新加入的目录,第一个参数是虚拟目录的名字,第二个则是schema的类名以表明我们加入的目录类型。然后再使用directoryentry的invoke方法,调用adsi中的"appcreate"方法将目录真正创建这里我们使用directoryentries类的find方法,如:
directoryentry de = rootfolder.children.find("aspcn","iisvirtualdir");
找到了,我们就可以赋值了。赋值时一定要好好看看啊,虚拟目录的属性值可以超多,一查一大堆。。:
比较常用的有:accessread,accesswrite,accessexecute,accessscript,defaultdoc,enabledefaultdoc,path
你可以看看这个!
http://www.codeproject.com/csharp/virtualdir.asp
有了虚拟目录难道不是网站的入口吗?


讨论区