1

我们继承了一个大小约为 40GB 的网站(主要来自用户提交的内容),其中混合了经典的 ASP、内联 .Net 和与之相关的已编译 .Net。从技术上讲,有两个站点与此相关联,为了节省磁盘空间,我有意设置 IIS 以使两个物理站点指向同一个文件夹,但使用独立的应用程序池来分隔工作进程。

我们遇到的问题是偶尔当您访问其中一个站点时,它似乎以某种方式从另一个站点获取应用程序变量。从我在这里/Bing 上看到的所有内容来看,由于独立的应用程序池,工作进程应该是分开的,但我想知道经典的 ASP 是否会以某种方式抛弃它?考虑到所有可以想象的东西的混合(有大约 4,200 个物理 .asp/.aspx 文件,后者大多以 03_ 开始,因为这是在我参与之前选择开始迁移到 .Net 的方法),拥有这些更好吗?作为独立的站点和文件夹?我似乎无法弄清楚为什么应用程序变量在中途被翻转,但它'

有小费吗?从应用程序变量/工作进程的角度来看,经典 ASP 的工作方式是否不同?

旁注 - 我知道应用程序变量在 .Net 世界中是一个糟糕的选择,尤其是对于连接字符串。我正在尝试纠正这一点,但这是一项艰巨的任务,其中存在零文档或评论,并且这些东西无处不在

4

1 回答 1

2

除非 Classic ASP 站点和 NET 应用程序** 之间存在故意交换,即使在同一个站点上运行(!!!)但出于明显的原因将应用程序池分开,例如使用应用程序变量来存储值,Classic asp 不可能将变量传递给 NET 应用程序。甚至会话变量也不在经典 ASP 和 NET 之间共享。它必须在代码中有意地完成。

例如,如果您使用 iframe 并将 url 字符串中的变量从 NET 应用程序传递到经典 ASP 页面或返回,或者只是从经典 ASP 页面调用 NET 应用程序并在 URL 字符串或诗句中传递变量。

** 如果您在同一域下运行,或者使用 cookie 在应用程序之间共享值。

于 2014-04-18T15:30:54.040 回答