Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 重定向错误,而不是重定向_C#_Asp.net_Redirect - Fatal编程技术网

C# 重定向错误,而不是重定向

C# 重定向错误,而不是重定向,c#,asp.net,redirect,C#,Asp.net,Redirect,当我运行我的一个页面时,有人将url更改为不存在的url,我希望他们重定向到我的登录页面。在internet上,我找到了以下代码,并将其放在我的Web.config文件中: <customErrors mode="On" defaultRedirect="~/ErrorPages/Login.aspx" /> 我把这个放在这个里面: <system.web> </sytem.web> 但是

当我运行我的一个页面时,有人将url更改为不存在的url,我希望他们重定向到我的登录页面。在internet上,我找到了以下代码,并将其放在我的Web.config文件中:

      <customErrors mode="On"
              defaultRedirect="~/ErrorPages/Login.aspx" />  

我把这个放在这个里面:

    <system.web>
    </sytem.web>

但是,这对我不起作用,我仍然可以看到:

我试图将模式从On更改为Remote Only,反之亦然,但这没有帮助。我还尝试将defaultRedirect从~/ErrorPages/Login.aspx更改为~/Login.aspx,但也没有成功。有人能帮我吗?提前谢谢

编辑:


Login.aspx页面位于名为Pages的子文件夹中。不幸的是:~/Pages/Login.aspx也不起作用

不确定您的错误,但是它应该是这样的:

<configuration>

   <system.web>
      <compilation targetFramework="4.0" />

      <customErrors mode="On" redirectMode="ResponseRewrite">
         <error statusCode="404" redirect="login.aspx" />
      </customErrors>
   </system.web>
<system.web>
<customErrors mode="On" defaultRedirect="~/ErrorPages/YourErrorPage.aspx">
  <error statusCode="404" redirect="~/ErrorPages/YourErrorPage.aspx" />
  <error statusCode="500" redirect="~/ErrorPages/YourErrorPage.aspx" />
</customErrors>
..........
.........
</sytem.web>

..........
.........

如果出现错误,我不会指向登录页面,因为如果您在该页面上出现错误,您将永远不会正确。而是在错误页面上放置一个链接标签,以重定向到登录页面

您的
login.aspx
页面的位置是什么。它找不到该文件,这就是为什么404 errorSolution>Project>Pages>Login.apx(如果这是您的意思)尝试了~/Pages/Login.aspx,但也没有work@NiekJonkman我的代码是正确的,Suraj代码也是正确的。不确定您正在做什么,以及代码中是否有其他错误。请尝试询问您的主机提供商他们对IIS上的错误做了什么。@NiekJonkman请检查更新的答案,并尝试在global.asax文件中处理它。现在,我只想留下这个问题,稍后再解决,但感谢您的帮助。
<system.web>
<customErrors mode="On" defaultRedirect="~/ErrorPages/YourErrorPage.aspx">
  <error statusCode="404" redirect="~/ErrorPages/YourErrorPage.aspx" />
  <error statusCode="500" redirect="~/ErrorPages/YourErrorPage.aspx" />
</customErrors>
..........
.........
</sytem.web>