Это предупреждение ARR вызывает мой 404?

Я получаю 404 во время перенаправления / перезаписи URL-адреса, и я не могу точно определить, что его вызывает.

Предупреждение:

REWRITE_DISABLED_KERNEL_CACHE

Вот мои правила:

<rule name="TFS Redirect" stopProcessing="true">
  <match url="^((?!tfs).)*$" />
  <conditions>
    <add input="{HTTP_HOST}" pattern="tfs.domain.com" />
  </conditions>
  <action type="Redirect" url="http://tfs.domain.com/tfs" />
</rule>
<rule name="TFS Rewrite" stopProcessing="true">
  <match url="^tfs(.*)" />
  <action type="Rewrite" url="http://server3:8080/{R:0}" />
</rule>

Кажется, что правило перенаправления работает, так как я получаю tfs.domain.com/tfs в моем браузере, когда перехожу к tfs.domain.com.

Но затем я получаю ошибку 404. Я просмотрел журналы неудачных запросов, но они мало что раскрывают. Есть этот вопрос, но, боюсь, я Я совершенно не понимаю, что означает эта дискуссия. Может быть, это решение моей проблемы, но я понятия не имею, о чем они говорят. К сожалению, это намного выше моей головы.

Итак ... предупреждение ARR вызывает ошибку 404? Если нет, как я могу найти первопричину этой проблемы?

Компактный вид

No. EventName                       Details                                                                                                                                                                             Time
--- ------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------
1.  GENERAL_REQUEST_START           SiteId="1", AppPoolId="DefaultAppPool", ConnId="1610612761", RawConnId="0", RequestURL="http://tfs.domain.com:80/favicon.ico", RequestVerb="GET"                                    01:03:35.718
2.  GENERAL_SET_REQUEST_HEADER      HeaderName="AspFilterSessionId", HeaderValue="", Replace="true"                                                                                                                     01:03:35.718
3.  GENERAL_ENDPOINT_INFORMATION    RemoteAddress="192.168.0.1", RemotePort="54278", LocalAddress="192.168.0.12", LocalPort="80"                                                                                        01:03:35.718
4.  GENERAL_REQUEST_HEADERS         Headers="Cache-Control: no-cache                                                                                                                                                    01:03:35.718
                                    Connection: keep-alive
                                    Pragma: no-cache
                                    Accept: image/webp,image/*,*/*;q=0.8
                                    Accept-Encoding: gzip, deflate, sdch
                                    Accept-Language: en-US,en;q=0.8
                                    Host: tfs.domain.com
                                    Referer: http://tfs.domain.com/tfs
                                    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
                                    DNT: 1
                                    "
5.  GENERAL_GET_URL_METADATA        PhysicalPath="", AccessPerms="513"                                                                                                                                                  01:03:35.718
6.  HANDLER_CHANGED                 OldHandlerName="", NewHandlerName="StaticFile", NewHandlerModules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule", NewHandlerScriptProcessor="", NewHandlerType=""  01:03:35.718
7.  MODULE_PRECONDITION_NOT_MATCH   Name="UrlRoutingModule-4.0", Precondition="managedHandler,runtimeVersionv4.0"                                                                                                       01:03:35.718
8.  MODULE_PRECONDITION_NOT_MATCH   Name="ScriptModule-4.0", Precondition="managedHandler,runtimeVersionv4.0"                                                                                                           01:03:35.718
9.  MODULE_PRECONDITION_NOT_MATCH   Name="OutputCache", Precondition="managedHandler"                                                                                                                                   01:03:35.718
10. MODULE_PRECONDITION_NOT_MATCH   Name="Session", Precondition="managedHandler"                                                                                                                                       01:03:35.718
11. MODULE_PRECONDITION_NOT_MATCH   Name="WindowsAuthentication", Precondition="managedHandler"                                                                                                                         01:03:35.718
12. MODULE_PRECONDITION_NOT_MATCH   Name="FormsAuthentication", Precondition="managedHandler"                                                                                                                           01:03:35.718
13. MODULE_PRECONDITION_NOT_MATCH   Name="DefaultAuthentication", Precondition="managedHandler"                                                                                                                         01:03:35.718
14. MODULE_PRECONDITION_NOT_MATCH   Name="RoleManager", Precondition="managedHandler"                                                                                                                                   01:03:35.718
15. MODULE_PRECONDITION_NOT_MATCH   Name="UrlAuthorization", Precondition="managedHandler"                                                                                                                              01:03:35.718
16. MODULE_PRECONDITION_NOT_MATCH   Name="FileAuthorization", Precondition="managedHandler"                                                                                                                             01:03:35.718
17. MODULE_PRECONDITION_NOT_MATCH   Name="AnonymousIdentification", Precondition="managedHandler"                                                                                                                       01:03:35.718
18. MODULE_PRECONDITION_NOT_MATCH   Name="Profile", Precondition="managedHandler"                                                                                                                                       01:03:35.718
19. MODULE_PRECONDITION_NOT_MATCH   Name="UrlMappingsModule", Precondition="managedHandler"                                                                                                                             01:03:35.718
20. MODULE_PRECONDITION_NOT_MATCH   Name="ServiceModel-4.0", Precondition="managedHandler,runtimeVersionv4.0"                                                                                                           01:03:35.718
21. URL_REWRITE_START               RequestURL="/favicon.ico", Scope="Distributed", Type="Inbound"                                                                                                                      01:03:35.718
22. RULE_EVALUATION_START           RuleName="TFS Redirect", RequestURL="favicon.ico", QueryString="", PatternSyntax="Regex", StopProcessing="true", RelativePath="/"                                                   01:03:35.718
23. PATTERN_MATCH                   Pattern="^((?!tfs).)*$", Input="favicon.ico", Negate="false", Matched="true"                                                                                                        01:03:35.718
24. CONDITIONS_EVALUATION_START     LogicalGrouping="MatchAll"                                                                                                                                                          01:03:35.718
25. CONDITION_EVALUATION            Input="{HTTP_HOST}", ExpandedInput="tfs.domain.com", MatchType="Pattern", Pattern="tfs.domain.com", Negate="false", Succeeded="true"                                                01:03:35.718
26. CONDITIONS_EVALUATION_END       Succeeded="true"                                                                                                                                                                    01:03:35.718
27. REDIRECT_ACTION                 Substitution="https://tfs.domain.com/tfs", RedirectURL="https://tfs.domain.com/tfs", AppendQueryString="true", RedirectType="Permanent"                                             01:03:35.718
28. RULE_EVALUATION_END             RuleName="TFS Redirect", RequestURL="https://tfs.domain.com/tfs", QueryString="", StopProcessing="true", Succeeded="true"                                                           01:03:35.718
29. REWRITE_DISABLED_KERNEL_CACHE                                                                                                                                                                                       01:03:35.718
        Warning

30. GENERAL_SET_RESPONSE_HEADER     HeaderName="Location", HeaderValue="https://tfs.domain.com/tfs", Replace="true"                                                                                                     01:03:35.718
31. URL_REWRITE_END                 RequestURL="https://tfs.domain.com/tfs"                                                                                                                                             01:03:35.718
32. GENERAL_SET_RESPONSE_HEADER     HeaderName="X-Powered-By", HeaderValue="ASP.NET", Replace="false"                                                                                                                   01:03:35.718
33. GENERAL_NOT_SEND_CUSTOM_ERROR   Reason="SETSTATUS_SUCCESS"                                                                                                                                                          01:03:35.718
34. GENERAL_FLUSH_RESPONSE_START                                                                                                                                                                                        01:03:35.718
35. GENERAL_RESPONSE_HEADERS        Headers="Content-Type: text/html; charset=UTF-8                                                                                                                                     01:03:35.718
                                    Location: https://tfs.domain.com/tfs
                                    Server: Microsoft-IIS/10.0
                                    X-Powered-By: ASP.NET
                                    "
36. GENERAL_RESPONSE_ENTITY_BUFFER  Buffer="<head><title>Document Moved</title></head>                                                                                                                                  01:03:35.718
                                    <body><h1>Object Moved</h1>This document may be found <a HREF="https://tfs.domain.com/tfs">here</a></body>"
37. GENERAL_FLUSH_RESPONSE_END      BytesSent="370", ErrorCode="The operation completed successfully.                                                                                                                   01:03:35.718
                                    (0x0)"
38. GENERAL_REQUEST_END             BytesSent="370", BytesReceived="400", HttpStatus="301", HttpSubStatus="0"                                                                                                           01:03:35.718

person InteXX    schedule 06.06.2017    source источник


Ответы (1)


Все ваши правила выглядят нормально.

Похоже, вам нужно включить функцию пересылки прокси ARR, которая по умолчанию отключена, REWRITE_DISABLED_KERNEL_CACHE также дает подсказку об этом.

Для включения прокси-пересылки; откройте на сервере командную строку с повышенными привилегиями и введите следующую команду.

appcmd.exe set config  -section:system.webServer/proxy /enabled:"True"  /commit:apphost

Или посмотрите Создание прямого прокси с использованием маршрутизации запросов приложений.

person Kul-Tigin    schedule 06.06.2017
comment
Боже милостивый, вот и все. Как, черт возьми, человек узнает об этом? - person InteXX; 06.06.2017