iis6.1下配置url重写

yaotomo 2016-09-05 03:05:15
原来的路径 http://xxx.xxx.xxx/lci/12345
要转向 http://xxx.xxx.xxx/lci.aspx?manageid=12345

我在Global.asax的Application_BeginRequest事件中添加代码(对正则表达式不熟悉就用最笨的方法了)

void Application_BeginRequest(object sender, EventArgs e)
{
string path = Request.Url.ToString();
if (path.Contains("/lci/")) {
int length = path.Split('/').Length;
string param = path.Split('/')[length - 1];
string newpath = path.Substring(0, path.Length - param.Length - 1).Replace("/lci","/e/diy/lci") + ".aspx?manageid=" + param;
Context.Response.Redirect(newpath);
}
}

在本地测试没有问题,但是部署到服务器的IIS上却提示404错误
在网上查了一些资料发现IIS要进行一些配置才可以支持urlrewrite
因为IIS接收到请求后默认去找.aspx的文件,它把请求当成了目录去处理。
网上都说IIS7中有自带的URL重写功能,也有说IIS6.0的配置方法,还有的说要修改web.config,可是我用的IIS6,1都找不到对应的地方去配置,弄了一天多了也没整好


...全文
665 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaotomo 2016-09-05
  • 打赏
  • 举报
回复
引用 4 楼 sp1234 的回复:
13年前的asp.net,本来照样可以很好地自己写上几行代码来进行“路由”。只不过后来这个东西时髦了,于是各种第三方工具也就被时髦地“引入”了。而且asp.net 高版本也单独设计了比较明显的路由类库功能。 asp.net 路由就是使用到了“服务器端重定向”技术,你可以从古老的 asp.net 入门教程中看到asp.net 有至少2种基本的服务器端重定向方法。不是 Response.Redirect。
谢谢指点。主要是因为我没法打开项目,也没法引入类库,连调试都不能,只能手动记事本改代码,很痛苦的,不得不采用了这种笨方法。。以前做url重写都不这么做的
yaotomo 2016-09-05
  • 打赏
  • 举报
回复
引用 2 楼 sossos555 的回复:
iis映射设置步骤,打开iis——网站——找到对应的网站名称——右击属性——主目录——配置——添加映射即可。
右键没有属性,IIS6.0有的。
啾啾我 2016-09-05
  • 打赏
  • 举报
回复
ii7没有做过端口映射,我都是在iis6上做的。应该都差不多的,你试试
  • 打赏
  • 举报
回复
13年前的asp.net,本来照样可以很好地自己写上几行代码来进行“路由”。只不过后来这个东西时髦了,于是各种第三方工具也就被时髦地“引入”了。而且asp.net 高版本也单独设计了比较明显的路由类库功能。 asp.net 路由就是使用到了“服务器端重定向”技术,你可以从古老的 asp.net 入门教程中看到asp.net 有至少2种基本的服务器端重定向方法。不是 Response.Redirect。
  • 打赏
  • 举报
回复
唉! 你的代码,根本不是你从网上看的什么 url rewrite。它就是使用 asp.net 自身就具有的 Respose.Redirect 功能来重定向的。 只不过,我不知道你从哪里抄的代码然后自己想当然地做的修改,因为你介绍了“用最笨的方法了.....”这类话,这说明你想自己动手修改。 服务器端重定向,应该使用 context.Server.Transfer 之类的功能来重定向的。你仔细看看你抄的原始文档,是怎么写的?
啾啾我 2016-09-05
  • 打赏
  • 举报
回复
iis映射设置步骤,打开iis——网站——找到对应的网站名称——右击属性——主目录——配置——添加映射即可。
啾啾我 2016-09-05
  • 打赏
  • 举报
回复
伪静态要在服务器iis上做端口映射才可以使用的。

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧