"无法使用前导.. 在顶级目录上退出"问题的解决
客户的网站就要结束了,本地调试差不多完成,剩下的工作就是做一些清理,以及建立站点地图信息。
注:使用了.NET版的URLRewriter重定向模块
于是将项目编译发布后,上传到服务器空间,作发布前的测试;因为事前项目已经做了比较详细的测试,编译发布后,一般来说不太会有什么问题。
发布上传后,设置好访问域名以及数据库访问等基本配置后,试着访问
首页打开了,正常
文章列表打开了,正常
再进一步,进入文章详情页面,出现异常,报:无法使用前导.. 在顶级目录上退出
查找资料,说是有路径使用的../这样的相对路径,或是要使用~/
本地做项目查找../以及./,未发现有这样的路径设置,后来使用排除法,找到SiteMap控件处写的Provider有问题,再进入Provider查找,相关代码返回文章列表地址,前缀 "~/" 报错,出去除正常访问,于是重新加了一段代码来处理这个~/路径,把它生成为以/开始的绝对路径后,发布到服务器上,问题解决