该代码在我的本地计算机(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}&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的紧凑版本)。也许您分享=))
答案 0 :(得分:0)
查找Windows功能,如果没有,请启用“控制面板\程序\程序和功能”下的.NET Extensibility 3.5 >>打开或关闭Windows功能
答案 1 :(得分:0)
托管公司最后回答。 system.webServer 被禁用。他们告诉我使用 .htaccess (并且有效)。感谢您的回答。