我试图执行我所理解的相对简单的任务。 我想从我网站上的url中删除附加信息。 我在我的应用程序中正确设置了处理和重写URL – 麻烦的是我无法通过IIS来实际得到我的应用程序没有扩展名。
细节:
我正在Windows Server 2003上运行IIS6。我进入了我的应用程序的网站,进入主目录选项卡,单击“configuration”,并添加通配符映射到以下文件:
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
我所validation的是与.ascx等应用程序扩展部分中使用的相同。
如果我导航到http://mywebsite.com/Blogs ,结果如下:
HTTP/1.1 404 Not Found Content-Length: 1635 Content-Type: text/html Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET Date: Thu, 14 Jan 2010 15:04:49 GMT
这似乎是一个标准的IIS 404消息。 如果我导航到http://mywebsite.com/Blogs.aspx我得到我的ASP.NET应用程序….
我怎样才能解决这个问题? 我觉得我已经加倍检查了十几次,但无济于事。 我必须失去一些明显的东西。
更新:这里是我正在使用的asp.net url重写器给出的确切说明:
IIS 6.0 – Windows 2003 Server
更新2:
我还没有find这个决议。 应用程序似乎没有收到来自IIS的请求,有任何进一步的想法?
404是因为ASP.NET没有find一个名为“博客”的文件。 这只是说,所有的文件应该由aspnet_isapi.dll处理(解释)
您将需要放置一些东西(自定义路由引擎或URL重写器),将URL映射到文件。 尝试Helicon的ISAPI重写或Ionic的Isapi重写 。
当你configurationIIS时,有两个“检查文件是否存在”。 有一个当你试图插入,并且必须保持不被检查(正如你上面的原始指令build议)。 第二个是列表中列出所有types的扩展名,您select.aspx并单击编辑,那么勾选checkbox。 这将使其工作。 谢谢。