经典ASP:复制应用程序时出现URL问题

时间:2010-12-06 16:15:47

标签: url asp-classic relative-path

我有一个旧的经典ASP应用程序,我希望并行复制 - 也就是说,我想在原始文件旁边配置另一个副本(与另一个数据库通信)。

所以,我有// MyServer / MyApp1 /,我很快就会有// MyServer / MyApp2 / ...到目前为止还不错。

除了应用程序中的许多URL是绝对的(例如JS和CSS文件),例如<script type="text/javascript" src="/MyApp1/menu.js"></script>

我可以搜索对/MyApp1/的引用并将其替换为/MyApp2/,但这是一项烦人的任务,在更新核心应用程序时,如果需要其他副本,我将不得不重复这项任务创造 - 尽可能是暂时的。

我可以将这些URL更改为父路径,但这意味着我需要以不同的方式引用每个资源,具体取决于我在应用程序文件夹结构中的位置。同样,它会起作用,但我不喜欢使用父路径有很多原因。

鉴于Classic ASP中没有波浪号(〜)功能(引用应用程序根目录),我可以考虑任何替代方案吗?

2 个答案:

答案 0 :(得分:1)

@CJM:我通常有一个db.asp,其中包含处理打开/关闭数据库连接的functionsub,作为主要包含在几乎所有页面上。在这个db.asp中,我会定义一个appurlabsurl路径,在您的情况下可以/MyApp1,然后您可以在<script type="text/javascript" src="<%=appurl %>/menu.js"></script>中使用{{1}}脚本。

你第一次这样做,它将是一个搜索/替换任务,但一旦完成,后续“重复”项目将只需要更新一个变量。

答案 1 :(得分:0)

在Classic ASP中,您可以使用Server.MapPath("/")获取根目录,或使用Server.MapPath(".")获取当前目录。