ASP.NET 没有扩展名的 404 页面的错误处理
ASP.NET error handling for 404 pages without extension
我有一个网站:Website Link 有一个问题,涉及到无分机呼叫。
如果你尝试这样的事情:
This
我希望用户去:
但事实并非如此。
我该如何更改?
大气压。我的 web.config
:
里有这个
<customErrors mode="On" defaultRedirect="/Error.aspx" redirectMode="ResponseRewrite">
<error statusCode="400" redirect="/Error.aspx?code=400" />
<error statusCode="403" redirect="/Error.aspx?code=403" />
<error statusCode="404" redirect="/Error.aspx?code=404" />
<error statusCode="500" redirect="/Error.aspx?code=500" />
</customErrors>
和
<system.webServer>
<httpErrors existingResponse="PassThrough" />
<modules runAllManagedModulesForAllRequests="true">
一些重写发送 Error.aspx
到“/findes-ikke”
经过更多的测试,没有运气,这是我的全部 web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation batch="false" targetFramework="4.7.1" debug="true" />
<customErrors mode="On" defaultRedirect="/Error.aspx" redirectMode="ResponseRewrite">
<error statusCode="404" redirect="/Error.aspx?code=404" />
</customErrors>
</system.web>
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<error statusCode="404" path="/findes-ikke?code=404" responseMode="ExecuteURL"/>
</httpErrors>
</system.webServer>
</configuration>
您可以尝试以下方法:
将 web.config 行更改为:
<error statusCode="404" redirect="/findes-ikke?code=404" />
您还可以尝试在 web.config 中添加以下内容以重定向所有 http 请求:
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<error statusCode="404" path="/findes-ikke?code=404" responseMode="ExecuteURL"/>
</httpErrors>
您也可以这样做来重定向所有错误请求。在上面给出的代码中进行此更改:
<customErrors mode="On" defaultRedirect="/findes-ikke?code=404" redirectMode="ResponseRewrite">
我有一个网站:Website Link 有一个问题,涉及到无分机呼叫。 如果你尝试这样的事情: This
我希望用户去:
但事实并非如此。
我该如何更改?
大气压。我的 web.config
:
<customErrors mode="On" defaultRedirect="/Error.aspx" redirectMode="ResponseRewrite">
<error statusCode="400" redirect="/Error.aspx?code=400" />
<error statusCode="403" redirect="/Error.aspx?code=403" />
<error statusCode="404" redirect="/Error.aspx?code=404" />
<error statusCode="500" redirect="/Error.aspx?code=500" />
</customErrors>
和
<system.webServer>
<httpErrors existingResponse="PassThrough" />
<modules runAllManagedModulesForAllRequests="true">
一些重写发送 Error.aspx
到“/findes-ikke”
经过更多的测试,没有运气,这是我的全部 web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation batch="false" targetFramework="4.7.1" debug="true" />
<customErrors mode="On" defaultRedirect="/Error.aspx" redirectMode="ResponseRewrite">
<error statusCode="404" redirect="/Error.aspx?code=404" />
</customErrors>
</system.web>
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<error statusCode="404" path="/findes-ikke?code=404" responseMode="ExecuteURL"/>
</httpErrors>
</system.webServer>
</configuration>
您可以尝试以下方法:
将 web.config 行更改为:
<error statusCode="404" redirect="/findes-ikke?code=404" />
您还可以尝试在 web.config 中添加以下内容以重定向所有 http 请求:
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<error statusCode="404" path="/findes-ikke?code=404" responseMode="ExecuteURL"/>
</httpErrors>
您也可以这样做来重定向所有错误请求。在上面给出的代码中进行此更改:
<customErrors mode="On" defaultRedirect="/findes-ikke?code=404" redirectMode="ResponseRewrite">