CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
【经验总结】不能实施并行处理的情况 浅谈并行编程中的任务分解模式
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

url重写的问题??

楼主baogong(包公)2005-11-05 12:19:08 在 .NET技术 / ASP.NET 提问

我是按这种方式来写的。。。  
   
  protected   void   Application_BeginRequest(Object   sender,   EventArgs   e)  
  {  
  string   strRawUrl   =   HttpContext.Current.Request.RawUrl;  
  string   strNewUrl;  
   
  if   (Regex.IsMatch(strRawUrl,   @"default.aspx",   RegexOptions.IgnoreCase))  
  {  
  strNewUrl   =   Regex.Replace(strRawUrl,   @"default.aspx",   @"showforum.aspx\?fld=1");  
   
  HttpContext.Current.RewritePath(   strNewUrl   );  
  }  
  else   if   (Regex.IsMatch(strRawUrl,   @"(\d+).aspx",   RegexOptions.IgnoreCase))  
  {  
  strNewUrl   =   Regex.Replace(strRawUrl,   @"(\d+).aspx",   @"View.aspx\?ID=$1");  
   
  HttpContext.Current.RewritePath(strNewUrl);  
  //HttpContext.Current.Response.Redirect(   strNewUrl   );  
  }  
  else   if   (Regex.IsMatch(strRawUrl,   @"View.aspx\?ID=(\d+)",   RegexOptions.IgnoreCase))  
  {  
  strNewUrl   =   Regex.Replace(strRawUrl,   @"View.aspx\?ID=(\d+)",   @"$1.aspx");  
   
  HttpContext.Current.Response.Redirect(   strNewUrl   );  
  }  
  }  
   
  但现在跳过去是提示我404错误,请问还需要做哪些处理呢?该如何做。 问题点数:100、回复次数:6Top

1 楼qugui(阿贵)回复于 2005-11-05 12:24:21 得分 10

你跳过去后的URL路径是什么?  
  直接输该URL路径有文件没有?Top

2 楼xiahouwen(武眉博<活靶子.NET>)回复于 2005-11-05 12:27:27 得分 40

eg:  
  protected   void   Application_BeginRequest(Object   sender,   EventArgs   e)  
  {  
  HttpContext   incoming   =   HttpContext.Current;  
  string   oldpath   =   incoming.Request.Path.ToLower();  
  string   ArticleID;    
   
  Regex   regex   =   new   Regex(@"/Files/(\d+)/(\d+)/(\d+).aspx",     RegexOptions.IgnoreCase   |   RegexOptions.IgnorePatternWhitespace);  
  MatchCollection   matches   =   regex.Matches(oldpath);  
  if   (matches.Count   >   0)    
  {  
  ArticleID   =   matches[0].Groups[3].ToString();    
  incoming.RewritePath(Request.ApplicationPath   +   "/ShowArticle.aspx?ID="   +   ArticleID);          
  }    
  }Top

3 楼baogong(包公)回复于 2005-11-06 00:02:15 得分 0

xiahouwen(活靶子.NET)   :  
   
  我用了你的方法,但还是出现如下的问题,找不阿相应的文件。  
  但事实上我的文件是存在的。  
  我用的是iis6.0  
  不知道是否需要在iis中做相应的设置信息。  
   
  The   resource   cannot   be   found.    
  Description:   HTTP   404.   The   resource   you   are   looking   for   (or   one   of   its   dependencies)   could   have   been   removed,   had   its   name   changed,   or   is   temporarily   unavailable.   Please   review   the   following   URL   and   make   sure   that   it   is   spelled   correctly.    
   
  to:qugui(阿贵)    
  直接输入该地址是可以正常访问的。Top

4 楼shiro(比卡丘)回复于 2005-11-13 01:19:20 得分 20

iis中aspx文件配置里“确认文件是否存在”的勾要打掉的Top

5 楼btut2004(养鱼炒股)回复于 2005-11-29 13:37:41 得分 20

用asp.net来处理并不是最好的方式.Top

6 楼xiahouwen(武眉博<活靶子.NET>)回复于 2005-11-29 13:46:53 得分 10

看看iis的isapi筛选器内是否   勾了确认文件存在   有救去掉Top

相关问题

  • url重写
  • 有关url重写
  • 什么时URL重写
  • 如何实现URL重写?
  • 请问如何重写URL地址?
  • 为什么我不能重写URL?
  • URL 重写出现的问题 --------------------------求教?
  • 高手请进,关于url重写
  • 关于url重写的问题
  • 高分求一url重写代码!

关键词

  • 文件
  • iis
  • view
  • d+
  • strnewurl
  • strrawurl
  • regex
  • httpcontext
  • regexoptions
  • aspx

得分解答快速导航

  • 帖主:baogong
  • qugui
  • xiahouwen
  • shiro
  • btut2004
  • xiahouwen

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
CSDN网站24小时值班电话:13552009689
Copyright © 2000-2009, CSDN.NET, All Rights Reserved
GongshangLogo