.NET伪静态路径问题

baozhong123 2012-07-06 05:20:43
.NET做的一个项目
现在要把 http://localhost/Qibucy/ShowNews.aspx?id=5
转换成 http://localhost/Qibucy/ShowNews_5.html的形式。
浏览器里直接输入http://localhost/Qibucy/ShowNews_5.html 这时错误
总是提示

找不到网页
正在查找的网页可能已被删除、重命名或暂时不可用。

这样的错误
但奇怪的是我在VS里直接运行 浏览器的地址为这样
http://localhost:2603/Qibucy/howNews_5.html 这时又正确
这样又能正确的仿问到我想要的新闻内容。这是为什么呢?
我的WEB.CONFIG 转换那一段是这样的
<RewriterRule>
<LookFor>~/ShowNews_(.[\d]*).html</LookFor>
<SendTo>~/ShowNews.aspx?ID=$1</SendTo> <!--//即把$1的值给括号的地方-->
</RewriterRule>
感觉就是相对路径与绝对路径之间的问题
还望高人指点一二。先谢过了先
...全文
154 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cloudapex 2012-07-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 jsdyjcl 的回复:]

大家一起来学习,伪静态只需要在web.config配置一下就行了吗
[/Quote]

web.config+Global.asax 完全可以
地菜 2012-07-09
  • 打赏
  • 举报
回复
你使用的是这个组件 UrlRewriter.NET

要理解原理,就得知道httpModules的机制

另外要了解在不同版本iis 上,httpModules 的安装方法

下面这个链接 给出的是 在win2003 安装 UrlRewriter.NET 的方法
http://urlrewriter.net/index.php/support/installation/windows-server-2003
baozhong123 2012-07-09
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
vs里面是集成好所有的功能的,同时伪静态功能也有
LZ想要在iis中也实现的话 需要添加映射
可以好好看看这篇文章
http://www.cnblogs.com/sishahu/archive/2011/04/07/2008735.html
[/Quote]

也试过了还是不行的
cloudapex 2012-07-09
  • 打赏
  • 举报
回复
<RewriterRule>
<LookFor>~/Qibucy/ShowNews_(.[\d]*).html</LookFor>
<SendTo>~/Qibucy/ShowNews.aspx?ID=$1</SendTo> <!--//即把$1的值给括号的地方-->
</RewriterRule>

是不是少了Qibucy/
baozhong123 2012-07-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
未部署?
[/Quote]
我是在IIS里建的虚拟目录 Qibucy
正常仿问是 http://localhost/Qibucy/ShowNews.aspx?id=5
这样的
baozhong123 2012-07-07
  • 打赏
  • 举报
回复
请问下楼上的,怎么部署啊?
yyl8781697 2012-07-07
  • 打赏
  • 举报
回复
vs里面是集成好所有的功能的,同时伪静态功能也有
LZ想要在iis中也实现的话 需要添加映射
可以好好看看这篇文章
http://www.cnblogs.com/sishahu/archive/2011/04/07/2008735.html
baozhong123 2012-07-07
  • 打赏
  • 举报
回复
我把默认站改成了我的这个站
没有伪静态时仿问地址为
http://localhost/ShowNews.aspx?id=5 都能仿问
以伪静态的形式仿问
http://localhost/ShowNews_5.html 仿问还是不对的

web.config 还是原来的这样的设置
<RewriterRule>
<LookFor>~/ShowNews_(.[\d]*).html</LookFor>
<SendTo>~/ShowNews.aspx?ID=$1</SendTo> <!--//即把$1的值给括号的地方-->
</RewriterRule>


哪个做成功的帮帮我吧
饕餮123 2012-07-07
  • 打赏
  • 举报
回复
你不要在默认网站加虚拟目录,新建个网站,铁定好。
饕餮123 2012-07-07
  • 打赏
  • 举报
回复
我是在IIS里建的虚拟目录 Qibucy
正常仿问是 http://localhost/Qibucy/ShowNews.aspx?id=5
这样的

<LookFor>~/ShowNews_(.[\d]*).html</LookFor>

楼主想一下~/是什么意思不就明白了

~/是站点根目录的意思 http://localhost/Qibucy/ShowNews.aspx?id=5这个地址的根目录是 http://localhost啊

年度csdn 2012-07-07
  • 打赏
  • 举报
回复
大家一起来学习,伪静态只需要在web.config配置一下就行了吗
dd_zhouqian 2012-07-06
  • 打赏
  • 举报
回复
未部署?

62,041

社区成员

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

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

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

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