再见西城 发表于 2015-1-16 22:36:12

ASP.NET教程之ASP.NET经由过程代码给IIS增添主机头

不过你如果学.net的话,你就不要选os了,这课比较底层的。你可以旁听数据库加上软件构件和中间件。(webservices和面向服务的课也应该听一听)asp.net|iis看了一醉解千愁的修正IIS目次的Asp.Net版本以后,想到之前想过要经由过程代码给IIS增添主机头,却一向没往研讨,明天趁着乐趣,决意把这个成绩办理了。
关于Blog网站,假如必要为用户供应二级域名撑持,而Web程序不是运转默许站点中,就必要在用户注册时经由过程代码给IIS增添响应的主机头。
这个成绩是经由过程Google搜刮到AppendahostheaderbycodeinIIS办理的,经由测试,确认办法可行并对代码举行了一些改善后,思索到这个内容会给一些伴侣带来匡助,因而就写了这篇文章。
代码以下:
staticvoidMain(string[]args)
{
AddHostHeader(1,null,80,"test.cnblogs.com");
}staticvoidAddHostHeader(intsiteid,stringip,intport,stringdomain)
{
DirectoryEntrysite=newDirectoryEntry("IIS://localhost/W3SVC/"+siteid);
PropertyValueCollectionserverBindings=site.Properties["ServerBindings"];
stringheaderStr=string.Format("{0}:{1}:{2}",ip,port,domain);
if(!serverBindings.Contains(headerStr))
{
serverBindings.Add(headerStr);
}
site.CommitChanges();
}
在找到AppendahostheaderbycodeinIIS之前,我经由过程上面的代码没找到"ServerBindings"属性,走了一些弯路。
DirectoryEntrysite=newDirectoryEntry("IIS://localhost/W3SVC/1/root");
代码很复杂,必要申明的是siteid,默许站点是1,关于非默许站点,经由过程检察站点日记文件名就能够晓得。
效率会有不少的变化。而实际上java是基于堆栈机器来设计,这和我们常见的基于寄存器的本地机器是差异比较大的。总体来说,这是一种虚拟机的设计思路。

海妖 发表于 2015-1-24 11:27:27

ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。

仓酷云 发表于 2015-2-1 09:34:41

同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。

第二个灵魂 发表于 2015-2-7 02:03:15

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。

因胸联盟 发表于 2015-2-19 17:21:08

ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。

谁可相欹 发表于 2015-3-6 15:19:36

ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。

冷月葬花魂 发表于 2015-3-13 03:09:43

关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。

若相依 发表于 2015-3-13 03:09:44

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

透明 发表于 2015-3-20 11:11:45

同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。
页: [1]
查看完整版本: ASP.NET教程之ASP.NET经由过程代码给IIS增添主机头