Почему модуль перезаписи URL останавливает CLR в IIS 8.5? - PullRequest
0 голосов
/ 29 апреля 2019
  • Windows server 2012 R2
  • IIS 8,5
  • Простой однофайловый веб-сайт index.html
  • В пуле приложений выбран .NET CLR 4.0

На этом этапе сайт работает. Затем я устанавливаю модуль перезаписи URL для IIS. Не добавляйте никаких правил для перезаписи URL, но когда я открываю веб-сайт в браузере, пул приложений для этого сайта останавливается.

Сообщение об ошибке:

HTTP Error 503. The service is unavailable.

Бревно от

%SystemDrive%\Windows\System32\LogFiles\HTTPERR

#Software: Microsoft HTTP API 2.0
#Version: 1.0
#Date: 2019-04-29 13:34:12
#Fields: date time c-ip c-port s-ip s-port cs-version cs-method cs-uri sc-status s-siteid s-reason s-queuename
2019-04-29 13:34:12 127.0.0.1 49200 127.0.0.1 80 HTTP/1.1 GET / 503 5 AppOffline test.com29 13:34:12 127.0.0.1 49200 127.0.0.1 80 HTTP/1.1 GET / 503 5 AppOffline test.com

В этом каталоге нет файлов журналов:

%SystemDrive%\inetpub\logs\LogFiles

Когда один модуль URL Rewrite удаляется, пул веб-сайта начинает работать нормально.

Почему модуль перезаписи URL останавливает CLR?

UPDATE

Сообщение журнала событий:

The Module DLL C:\Windows\system32\inetsrv\rewrite.dll failed to load.  The data is the error.

Затем я добавил в приложение Host config bitness32

C:\Windows\System32\inetsrv\config\applicationHost

<add name="RewriteModule" image="%SystemRoot%\system32\inetsrv\rewrite.dll" preCondition="bitness32" />

С bitness32 это не останавливает пул, но я получаю эту ошибку в браузере:

HTTP Error 500.0 - Internal Server Error
Module "RewriteModule" could not be found

Ответы [ 2 ]

1 голос
/ 30 мая 2019

В журнале событий я нашел то же сообщение.Т.е. не удалось загрузить модуль DLL C: \ Windows \ system32 \ inetsrv \ rewrite.dll.Данные - ошибка.

Для меня решение, которое работало, состояло в том, чтобы заменить "rewrite.dll".На двух других наших серверах он работал нормально, и они были установлены в 2017 году. Поэтому я просто скопировал «rewrite.dll» с этого сервера и заменил его на моем новом сервере.

Для меня более старая версия (v7.1.1952.0) dll работает, но новая версия (v7.1.1993.2351), которая поставляется с последней настройкой, не работает.

Кстати, вам нужно остановить IIS, прежде чем заменить DLL и начать снова.

0 голосов
/ 29 апреля 2019

У вас есть какие-либо записи в журналах событий приложения, указывающие на причину сбоя? Вы можете настроить правило сбоя в debug diag, а также собирать автоматический аварийный дамп в debug diag, а затем анализировать его там. даст вам больше понимания, если журнал событий не очень вам поможет. У% SystemDrive% \ inetpub \ logs \ LogFiles не будет файлов, и это ожидаемо, поскольку сайт уже аварийно завершился и отключен, а запрос даже не достигает сайта

...