状态代码 404 的 ASP.NET 页面
每个人! 我遇到了 asp.net 错误异常的问题。 我正在开发房地产网络应用程序,谷歌已经为房地产链接建立了索引。但一段时间后,数据库中不再存在一些房地产。 接下来的问题是:如果用户单击数据库中不再存在的房地产链接, 我需要返回状态代码为 404 的客户错误页面。
我尝试以下一种方式执行此操作:
- 在处理 url 时,我检查是否存在此类情况 房地产存在,
- 如果不存在我抛出 Global.asax 中我自己的
RealEstateDontExistException
- 处理错误 服务器的我检查这个错误是否是
RealEstateDontExistException
的类型 然后 - 我设置:
Responce.StatusCode = 404; Server.CleanError(); Server.Transfer("~/ErrorPage.aspx");
我需要显示状态代码为 404 的 aspx 页面。 在本地主机上它工作正常。但是,如果我尝试从生产服务器获取不存在的房地产,那么网络浏览器会显示下一个文本
“您正在查找的资源已被删除、更名或暂时不可用。” 状态代码 404。
有人可以帮助我吗?谢谢 。
everyone!
I have problem with asp.net error exceptions.
I'm working on real estate web-app and google have made indexes for links on real estates. But after some time period several real estates don't exist anymore in db.
Problem is next: if user click on link for real estate, which doesn't exist anymore in db,
I need return my custome error page with status code 404.
I try to do that in next way:
- on handling url I check if such
real estate exists - if not I throw
my ownRealEstateDontExistException
- in Global.asax in handling error
of server I check if this error is
type ofRealEstateDontExistException
then - I set:
Responce.StatusCode = 404; Server.CleanError(); Server.Transfer("~/ErrorPage.aspx");
I need show aspx page with status code 404.
On local host it works fine. But if I try get not existed real estate from production server, then web browser show me next text
"The resource you are looking for has been removed, had its name changed, or is temporarily unavailable."
with status code 404.
Can someone help me? Thanks .
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您的生产 Web 服务器似乎显示了自己的错误页面。请配置它 (IIS) 以在 404 错误上显示自定义错误页面 - 请参阅本文了解如何操作在 IIS7 上执行此操作(以及 此功能适用于 IIS 6.0)。
It appears that your production web server is showing its own error page. Please configure it (IIS) to show the custom error page on 404 error - see this article for how to do that on IIS7 (and this for IIS 6.0).
也许您的 ErrorPage 对于 Internet Explorer 中的 HTTP 404 来说太小(应该超过 10 行)。
查看这些资源:
这是 IE 用于确定最小大小的注册表项:
Maybe your ErrorPage is too small for HTTP 404 in Internet Explorer(should have more than 10 lines).
Have a look at these ressources:
This is the registry-key that the IE uses to determine the minimum size: