在我的研究中,我发现了两种方法来完成它们。ASP.NET友好网址
这两个都需要对Global.Asax中的Application_BeginRequest过程进行修改,在那里您将运行代码来执行实际的URL映射(我的数据库视图包含所有友好的URL及其映射的“真实”URL) 。现在的诀窍是让你的请求在没有aspx扩展名的情况下通过.NET引擎运行。我发现的两种方法是:
通过带有通配符应用程序扩展映射的.NET引擎运行所有内容。
创建一个自定义aspx错误页面并告诉IIS发送404到它。
现在,这里是我的问题:
没有任何理由的其中一个比另一个好做?
在我的开发者服务器上玩耍时,我注意到关于#1的第一件事就是它的frontpage扩展混淆了,没有什么大不了的,但这就是我习惯连接到我的网站的方式。我与#1的另一个问题是,尽管我的托管公司对我(我是他们最大的客户)宽容,并且会考虑这样做,但他们对可能存在的任何安全风险保持警惕。
`#2很好,但我只是觉得它不如#1有效。我只是在妄想?
感谢
谢谢,这是没有所有其他资源文件通过引擎运行的意义。 我原本在我的网址中有aspx扩展名,但想清除它。 我的网站是在IIS 6上,但我会更多地关注IIS 7的东西。 – 2009-11-17 14:02:03