Назад | Перейти на главную страницу

Веб-ферма IIS не обрабатывает запрос

Я установил веб-ферму IIS с использованием Windows Server 2012 R2 Standard, IIS 8.5 со следующими расширениями: Web Farm Framework v1.1 Внешний кеш v1.0, URL Rewrite v2, ARR v3.

Ссылка: https://blogs.technet.microsoft.com/erezs_iis_blog/2013/11/27/installing-arr-manually-without-webpi/

Правила перезаписи URL-адресов содержат сопоставление правил со знаком «*», автоматически сгенерированное при создании веб-фермы IIS.

Я пытался получить доступ http: // localhost / какое-то_случайное_имя и запрос был обработан локальным IIS вместо моей веб-фермы IIS, и он возвращает HTTP 404.

Я включил ведение журнала FailedRequestTracing, но никаких журналов не было. Я предполагаю, что это связано с тем, что локальный IIS обработал запрос как HTTP 404 вместо маршрутизации на веб-ферму IIS.

Как мне устранить / отладить эту проблему?

  1. Очистите правила перезаписи URL.
  2. Создайте веб-сайт, который обрабатывает все запросы.
  3. Убедитесь, что веб-сайт доступен из Интернета.
  4. Создайте правило перезаписи URL-адреса, которое перезаписывает все запросы к сети вашей фермы, как показано ниже.

Вы сделали. А вот образец правила перезаписи URL, которое уже работает на моей машине.

<rule name="rule_name" stopProcessing="true">
                <match url="(.*)?" />
                <conditions logicalGrouping="MatchAny" trackAllCaptures="false">
                    <add input="{HTTP_HOST}" pattern="^(www.)?YOUR_DOMAIN.com(:PORT)?$" />
                </conditions>
                <serverVariables>
                </serverVariables>
                <action type="Rewrite" url="http://WEB_FARM_NAME/{R:0}" appendQueryString="true" />
            </rule>