URL重写页面加载循环
我正在使用Intelligencia UrlRewriter来应用URL重写。URL重写页面加载循环
我把page1.aspx
和使用OnClick
事件的按钮,并做了Response.Redirect
到page2.aspx
。如果我使用这两个示例页面进行测试,一切正常。
然后,我将一些样式和javascript应用于page2.aspx
。当我点击page1.aspx
上的同一个按钮并在page2.aspx.cs
page_load
函数上设置断点时,我观察到page_load
函数循环多次,并且它循环并加载所有数据库调用多次。
申请IsPostback
没有帮助。然后我删除了CSS和JS,那么一切都很好。需要回答为什么这个page_load
函数重复多次。
您必须为CSS和JS目录设置重写规则。您的页面一次又一次地调用,因为您的页面提供了css和JS文件的请求。根据你的目录系统为你的CSS和JS设置重写规则。
编辑 不知道可能是工作中使用的开箱ASP.Net实施以及发生
<rewrite url="^(/.+(\.gif|/.+\.png|\.jpg|\.ico|\.pdf|\.css|\.js|\.asmx|\.axd|\.flv|\.swf)(\?.+)?)$" to="$1" processing="stop" />
我所有的CSS文件都在Styles文件夹下,我所有的js文件都在js文件夹下,并且这两个文件夹都位于主目录下。所以你可以指导我如何编写REWRITERULE在这种情况下,因为IAM完全新的URL重写和完全丢失在REWRITERULES这一点........尝试,但不能解决我的问题 – harry 2011-05-29 09:18:55
我的应用程序是在ASP中。 NET 3.5 C# – harry 2011-05-29 09:47:43
感谢Mr.Prakash确实节省了我的一天......现在它的工作,现在我甚至理解逻辑如何处理........你也可以建议几个最好的链接来获得URL REWRITING indepth知识...对于一个asp.net 3.5 C#应用程序........ – harry 2011-05-29 13:05:19
页负载循环。一种方法可以检查并减少处理开销,即检查httpContext对象以查看当前请求的对象是什么。如果对象不是您所期望的 - 图像,.js文件,样式表等,请退出页面处理。
我也有这个问题。像其他人一样,它可能是由页面内的相对路径引起的。
我被重写:
domain.com/article/12345/title-here
要成为:
domain.com/article.aspx?ID=12345
问题是,有2个图像与相对路径:
EG. images/fb.jpg
images/tw.jpg
通过登录请求的值。 RawUrl.ToString(),我能够看到浏览器正在请求以下图像:
domain.com/article/12345/images/fb.jpg
domain.com/article/12345/images/tw.jpg
虽然这些文件不存在,但URL仍然符合重定向规则。
因此,重写的URL:
domain.com/article.aspx?ID=12345
这就解释了为什么我的网页加载三次。一次用于HTML,一次用于每个图像。
将图像src值更改为绝对路径并解决了问题。
非常感谢你...这帮了我很多! – 2013-10-29 18:25:24
你有没有为JS和css文件夹设置urlrewrite规则? – 2011-05-29 07:22:38