IIS:如何添加一个模块由默认Web站点上运行?

问题描述 投票:0回答:1

我有一个IIS服务器部署了几个web应用程序(在W2K8 R2 IIS 7.5)。为了除去一些HTTP响应头,我创建了一个模块(C#的.dll),复制此.dll于每个网络应用程序的每个区间的文件夹,并参考该模块中每一个类似下面的web.config中:

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules>
      <add name="MyModule" type="MyNamespace.MyClass" />
    </modules>
</system.webServer>

从这一点上来说,当我检查在IIS Web应用程序的模块部,基准是存在的,它工作正常(报头是不是在HTTP响应)。

PS:我是不是成功的使用GAC,反正...

这是发生了什么:

  • 当我连接到https://example.com/myapp头中不存在的响应,如所预期。
  • 当我连接到https://example.com头存在,因为我didn't想要的,但令人意外,因为我didn't触摸默认Web站点在这一点上。此外,该默认Web站点只是一个HTML重定向到Web应用程序的一个。

问题是,当涉及到默认Web站点,我不能找到它的web.config文件,我也不觉得哪里我把.dll文件的地方。任何人都可以帮忙吗?

c# http module iis-7 gac
1个回答
0
投票

IIS有一个全球性的计算机级别的配置文件。所有web.config文件基本上是从一个继承。它的工作原理是这样的(source):

enter image description here

你可以简单地添加模块到machine.config文件,它会自动被添加到所有网站。见this问题找到该文件。

© www.soinside.com 2019 - 2024. All rights reserved.