gpt4 book ai didi

vbscript - 经典 ASP : replacing a string

转载 作者:行者123 更新时间:2023-12-02 21:06:46 26 4
gpt4 key购买 nike

以下代码:

Dim url       
url = fso.GetAbsolutePathName(objFile)

给我

C:\KB\Dev\Java.htm

然后,当我将其写为 href 时:

Response.Write("<a href='" + url + "'>" + objFile.Name + "</a><br>")

链接在浏览器中被翻译为:

file:///C:/KB/Dev/Java/Java.htm

而我需要它

file://172.20.4.107/c$/KB/Dev/Java/Java.htm

否则,该链接将无法用于导航。

我正在尝试:

url = Replace(url, "///", "//172.20.4.107/")
url = Replace(url, "c:", "c$")
Response.Write(url & "<br>")

但似乎没有任何改变。

最佳答案

什么@Keith suggested绝对没问题,但在大多数现代浏览器中,您会遇到不同程度的问题,因为本地文件链接的超链接被阻止,因为它们存在安全风险。

更可靠的解决方案是不使用本地文件链接并完全消除风险。如果您可以访问 IIS(如果您使用的是经典 ASP,您可能可以以某种形式访问 IIS),您可以通过创建一个指向远程计算机共享的虚拟目录并锁定该目录来实现此目的。您认为合适的权限。

假设您设置了一个虚拟目录来指向别名KB,然后您就可以访问它;

http://yourhost/KB/dev/java.htm

如果虚拟目录已映射到

\\172.20.4.107\c$\KB\

但是我们可以更进一步,诸如c$之类的管理共享是不可配置的,并且可供系统使用。为了更好地控制映射目录,请在远程计算机上创建一个共享 KB,并根据需要设置 NTFS 权限,然后将虚拟目录指向;

\\172.20.4.107\KB\

您还可以调用共享 KB$ 以对网络浏览器隐藏共享。

\\172.20.4.107\KB$\

有用的链接

关于vbscript - 经典 ASP : replacing a string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35700708/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com