IIS: как добавить модуль для запуска на веб-сайте по умолчанию? - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть несколько веб-приложений, развернутых на сервере IIS (IIS 7.5 в W2k8 R2).Чтобы удалить некоторые заголовки ответа HTTP, я создал модуль (C # .dll), скопировал этот .dll в каждую папку bin каждого веб-приложения и ссылаюсь на этот модуль в файле web.config каждого, как показано ниже:

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

С этого момента, когда я проверяю раздел Модуль веб-приложения в IIS, ссылка есть, и она отлично работает (заголовки отсутствуют в ответе HTTP).

PS.: В любом случае мне не удалось использовать GAC ...

Вот что происходит:

  • при подключении к https://example.com/myapp заголовок отсутствуетв ответе, как и ожидалось.
  • , когда я подключаюсь к https://example.com, заголовок присутствует, как я не хотел, но это ожидается, потому что я не касался веб-сайта по умолчанию вэта точка.Кроме того, этот веб-сайт по умолчанию является просто перенаправлением HTML на одно из веб-приложений.

Проблема в том, что когда дело доходит до веб-сайта по умолчанию, я не могу найти ни его web.config, ния могу найти место, где я бросаю .dll.Кто-нибудь может помочь?

1 Ответ

0 голосов
/ 07 февраля 2019

IIS имеет глобальный файл машинного уровня .Все web.config файлы по существу наследуются от этого.Это работает примерно так ( source ):

enter image description here

Вы можете просто добавить свой модуль в файл machine.config ибудет автоматически добавлен на все сайты.См. этот вопрос, чтобы найти этот файл.

...