如何修复500.19“ faultRequestLogPath”故障?

时间:2019-04-21 02:53:43

标签: url-rewriting web-config url-redirection iis-10

该代码在我的本地计算机(IIS-7.5)上有效,但不能在线(在IIS-10上)

HTTP错误500.19-0x8007000d-内部服务器错误-“ faultRequestLogPath”

system.webServer ”规则似乎无法在线运行。我正在尝试将http重定向到https(我知道了),但是我无法获得用户友好的URL。

可能很高duplicate of this ...

<configuration>
  <location path="xXx.asp">
    <system.webServer>
      <httpRedirect enabled="true" destination="https://example.com/" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>

此“ http到https重定向”代码有效...

...

但下面的代码不是...

<system.webServer>
  <rewrite>
    <rules>
      <rule name="Rule 1">
        <match url="^(.*)" ignoreCase="false" />
        <conditions logicalGrouping="MatchAll">
          <add input="{URL}" pattern="^/404.asp" ignoreCase="true" negate="true" />
          <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
          <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
        </conditions>
        <action type="Rewrite" url="404.asp" />
    </rule>

    <rule name="Rule 2">
      <match url="^(.*)| ?([_0-9a-z-]+)" ignoreCase="false" />
      <conditions logicalGrouping="MatchAll">
        <add input="{URL}" pattern="default.asp" ignoreCase="true" negate="true" />
        <add input="{URL}" pattern=".css" ignoreCase="true" negate="true" />
        <add input="{URL}" pattern=".js" ignoreCase="true" negate="true" />
        <add input="{URL}" pattern=".png" ignoreCase="true" negate="true" />
      </conditions>
      <action type="Rewrite" url="xXx.asp?ulam={R:1}&amp;query={R}" />
    </rule>
  </rules>
  </rewrite>
  <defaultDocument enabled="true">
    <files>
      <clear />
        <add value="index.asp" />
        <add value="home.asp" />
        <add value="default.asp" />
      </files>
  </defaultDocument>
  <httpErrors errorMode="Detailed">
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" prefixLanguageFilePath="" path="/OaOInternal/DefaultWebs/sedoCurrent/Error404.aspx" responseMode="ExecuteURL" />
  </httpErrors>
  <handlers>
    <add name="IgnoreACCDB" verb="*" path="*.accdb" type="System.Web.HttpForbiddenHandler" />
  </handlers>
  <staticContent>
    <remove fileExtension=".ogv" />
    <remove fileExtension=".ogg" />
    <mimeMap fileExtension=".7z" mimeType="application/x-7z-compressed" />
    <mimeMap fileExtension=".ogv" mimeType="video/ogg" />
    <mimeMap fileExtension=".webmanifest" mimeType="application/manifest+json" />
    </staticContent>
  </system.webServer>
</configuration>

为了获得用户友好的URL,我将所有页面(请求)重定向到一个( xXx )页面(某些扩展名除外),并借助querystring从数据库中获取内容。但这在IIS-10上不起作用。

我知道您有解决方案,可能是更好的解决方案(Rule1和Rule2的紧凑版本)。也许您分享=))

2 个答案:

答案 0 :(得分:0)

查找Windows功能,如果没有,请启用“控制面板\程序\程序和功能”下的.NET Extensibility 3.5 >>打开或关闭Windows功能

答案 1 :(得分:0)

托管公司最后回答。 system.webServer 被禁用。他们告诉我使用 .htaccess (并且有效)。感谢您的回答。