例如,此网址为http://stackoverflow.com/questions/ask
,而不是http://stackoverflow.com/questions/ask.aspx
。我怎样才能做到这一点?
答案 0 :(得分:1)
您可以使用此技巧和工具:
http://forums.iis.net/t/1150350.aspx - IIS解决方案
http://forums.asp.net/t/979581.aspx - ASP.NET 404页面解决方案
答案 1 :(得分:0)
添加对程序集System.Web.Routing的引用,然后将以下内容添加到global.asax文件中:
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("",
"questions/ask/{question}",
"~/questions/ask.aspx");
}
答案 2 :(得分:0)
如果您的问题不是特定于aspx页面,您可以在任何运行apache的web服务器上使用.htaccess文件(和mod_rewrite - 但几乎所有这些都是。)
在此网站上查看有关.htaccess的各种问题,或在线查看许多简单的教程。
基本上你可以在你希望受影响的目录的根目录中放置一个特殊文件.htaccess
,基本上可以说
您可以使用about_us/details.php
about_us/details
这是一个非常简单的例子
RewriteEngine on
Options +FollowSymlinks
RewriteRule ^questions/ask ../questions/ask.aspx [L]
答案 3 :(得分:-1)
当Web服务器实现将给定URL模式映射到要提供的实际内容的处理程序时,就会发生这种情况。
在这个网站中,它可能来自MVC框架的使用(猜测)。
在Windows IIS上,您可以使用http://www.iis.net/download/URLRewrite