2020年12月,朋友的海外win2008r2的服务器就要到期了,上面也没几个站了,租服务器就不合算了。3个人合伙买了一个海外的虚拟主机,算下来,平均下来每人每年一百不到。无限流量、无限网站、无限空间,放一些小站,还是很划算的。
帮我的朋友迁移网站,就发现问题了。他的这个asp.net站,dtcms是比较老的.net2的站,经典模式网站,他在十年前对这个站进行升级,引用了NVelocity的1.1版本,编译成经典模式net4.0。现在迁移啊,源码找不到了,迁移到新的虚拟主机上(环境是Microsoft-IIS 8.5, ASP.NET 4.8)。出现一个错误,就是“Inheritance security rules violated while overriding member”,意思是继承违反了安全规则,如下图。
这样的错误,在IIS7上是没有出现过的,因为没有充足的环境进行测试,在另一台IIS8.5的服务器上,测试也是正常,初步怀疑是因为asp.net4.8的原因,虚拟主机的asp.net配置:代码访问安全性 (CAS) 信任级别 是FULL。
解决这个问题,2个办法,1个办法是服务器版本降级到asp.net4,还有