-1

我在 asp 经典中使用 vbscript。我还使用了 FreeASPUpload 类。我想上传文件不是在本地,而是使用其 IP 地址作为路径上传到服务器。

如果我将在本地上传,这是代码工作..

  Dim uploadsDirVar
  uploadsDirVar = Server.MapPath("../temp/")

  Set Upload = New FreeASPUpload
  Upload.Save(uploadsDirVar)

但我想将它上传到带有 ip 地址的路径中。下面是我尝试过的代码,但它导致 HTTP 500 内部服务器错误。

Dim uploadsDirVar
uploadsDirVar = "\\123.45.6.789\DocFolder\"

Set Upload = New FreeASPUpload
Upload.Save(uploadsDirVar)

由于登录,我已经在本地映射了文件夹 \123.45.6.789\DocFolder\。我也尝试了带有凭据的代码,但仍然出现同样的错误。见下文:

Dim ServerShare 
Dim UserName 
Dim Password 
Dim NetworkObject 
Dim FSO

ServerShare = "\\123.45.6.789\DocFolder\"
UserName = "domain\username"
Password = "password"

Set NetworkObject = CreateObject("WScript.Network")
Set FSO = CreateObject("Scripting.FileSystemObject")

NetworkObject.MapNetworkDrive "", ServerShare, False, UserName, Password

Dim uploadsDirVar
uploadsDirVar = "\\123.45.6.789\DocFolder\"

Set Upload = New FreeASPUpload
Upload.Save(uploadsDirVar)

结果还是一样..有人可以帮忙吗?我是 asp classic 和 vbscript 的新手,尤其是在文件上传及其行为方面。谢谢

4

1 回答 1

0

您在 IIS 中的网站通常在特定于 IIS 的计算机用户帐户 (IUsr_computername) 下运行。它在您尝试通过网络访问的远程计算机上没有任何权限。您需要在 IIS 计算机和远程共享所在的域中创建一个用户,并将该网站设置为作为该新域用户运行。然后,您可以授予该新域用户在远程计算机上共享的文件夹中读/写的权限。

于 2013-02-04T22:22:53.933 回答