如何创建新网站或从代码中将主机标头添加到现有IIS 7服务器?
我看过,但未能找到一个有效的例子?
答案 0 :(得分:0)
一种解决方案是创建一个自定义HttpModule,为您完成工作,但它确实需要您拥有支持通配符(*)的DNS。如果您的DNS不支持,您可能会考虑管理自己的DNS。
那就是说,这是一个关于创建HttpModule的好帖子,它解析传入的“子域”并将流量转发到适当的位置。他正在使用搜索机制[找到与子域匹配的关键字的内容],但可以根据自己的需要进行修改。
http://codebetter.com/blogs/brendan.tompkins/archive/2006/06/27/146875.aspx
[编辑] 另一种解决方案是找到可以通过Web服务提供可编程DNS服务的DNS提供商。然后,您需要在应用程序需要时以编程方式将子域添加到该DNS。这是一个超级简化的解释,并没有考虑到您的业务需求。我个人更喜欢HttpModule选项在应用程序中添加子域,因为它需要较少的服务器修改。
答案 1 :(得分:0)
您使用的是什么版本的.Net?
如果您使用的是.Net 3.0或3.5,并且只需要配置IIS7(不是6或5),请查看Microsoft.Web.Administration命名空间 - 它应该包含您需要的所有内容。
如果您使用的是旧版本的.net,请查看WMI。
我没有IIS 7的任何WMI代码(我们有一个Intranet应用程序的设置,但它使用与IIS 6兼容的WMI)。但是,这里有一个指向可用于计算WMI内容的工具的链接:http://www.microsoft.com/downloads/details.aspx?familyid=2cc30a64-ea15-4661-8da4-55bbc145c30e&displaylang=en它实际上会生成用于操作WMI的c#(或vb.net)代码。对于IIS 7,我认为根WMI名称空间是root \ WebAdministration。
另外,看一下这个链接,它可能会有所帮助Get to Know the IIS 7.0 WMI Provider Using CIM Studio