我也在这个网站上进行了大量的互联网搜索和搜索。我最近接受了一个Web开发工作,我收到了客户请求,要求将其网址从当前的“www.web.com/ax/abx/abcx/mysite”更改为“www.web.com/mysite”。 / ax / abx / abcx /是解决方案中办公室层次结构的嵌套,其中有很多。
我试图从文件夹'site'中取出结构并在IIS的根网站下直接创建一个虚拟目录,但遇到模板和.dll错误的蛇坑,因为之前的程序员也嵌套了这些。我已经确定需要很多时间来重写模板和.dll以匹配新的命名空间,而我宁愿不必重写网站。
有没有办法只是“欺骗”新网址,以便服务器知道当前目录结构中的位置,如果用户输入“www.website.com/site”?
答案 0 :(得分:2)
答案 1 :(得分:0)
如果使用的是asp.net 3.5或更高版本,则可以使用网络表单路由。
http://msdn.microsoft.com/en-us/library/cc668202(v=vs.90).aspx
答案 2 :(得分:0)
还可以使用URL重写 - 下面的MSDN文章介绍了如何...
http://msdn.microsoft.com/en-us/library/ms972974.aspx
RewriteURL还有一些不错的标准包装 - 在整洁的可配置/可安装模块中 - 下面的一个示例是MSFT支持的:
http://www.iis.net/download/URLRewrite
与将WebApp重新映射到新“路径”的任何方法一样,进行重写有很多副作用,并且有诸如硬编码路径之类的问题/假设 - 我强烈建议彻底测试解决方案。
答案 3 :(得分:0)
我强烈建议在IIS6中使用ISAPI_Rewrite进行URL重写:http://www.helicontech.com/isapi_rewrite/
对于一个全局配置是免费的,或者如果您的IIS中有多个站点,那么可以合理地进行升级(99美元)。
如果你追求它,我可以帮助你具体使用。