Asp classic 将server.mappath修改为其他内容,因为共享主机不允许父路径
我正在使用以下代码连接到我的数据库。在我的主机升级IIS之前,它工作得很好,现在由于默认情况下禁用了父路径而无法连接 我尝试过使用文件的虚拟路径,但每次都会出错,不管我尝试了什么——即使是直接从我的托管公司获得文件的完整虚拟路径 我需要将连接脚本的server.mappath部分更改为允许我使用文件的完整文件路径或url,但不知道从何处开始Asp classic 将server.mappath修改为其他内容,因为共享主机不允许父路径,asp-classic,Asp Classic,我正在使用以下代码连接到我的数据库。在我的主机升级IIS之前,它工作得很好,现在由于默认情况下禁用了父路径而无法连接 我尝试过使用文件的虚拟路径,但每次都会出错,不管我尝试了什么——即使是直接从我的托管公司获得文件的完整虚拟路径 我需要将连接脚本的server.mappath部分更改为允许我使用文件的完整文件路径或url,但不知道从何处开始 Set adoCon = Server.CreateObject("ADODB.Connection") adoCon.Open "DRIVER={Micr
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("../stockdetails.mdb")
在大多数其他页面上,其编码如下:
filePath = Server.MapPath("../stockdetails.mdb")
objDataConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +filePath)
如果我将所有内容保持原样,则会出现以下错误:
The '..' characters are not allowed in the Path parameter for the MapPath method.
我创建了另一个文件来输出数据库的完整文件路径。此输出如下所示:
\\e379583ad6.storage-1a.hosting.MYDOMAINNAME\sites\1a\e\e379583ad6\public_html\nurbek\stockdetails.mdb
根据此信息,我将连接脚本更改为:
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("\e379583ad6.storage-1a.hosting.MYDOMAINNAME\sites\1a\e\e379583ad6\public_html\nurbek\stockdetails.mdb")
然后,这给了我错误消息:
[Microsoft][ODBC Microsoft Access Driver] '(unknown)' is not a valid path. Make sure that the path name is spelled correctly and that you are connected to the server on which the file resides.
有人能建议我如何修改这两个连接脚本以使用完整的文件路径吗
www.mydomainname.com/nurbek/stockdetails.mdb
Server.MapPath
用于将父路径(或虚拟路径)转换为绝对路径。如果您试图将一个已经绝对的路径传递给Server.MapPath
,您将收到一个“无效路径”错误,因为您已经确定了绝对路径是什么
最好使用Server.MapPath
,因为它允许您迁移代码而不必编辑任何绝对路径地址,但是如果您无法使用它,您可以只引用完整的绝对路径。这应该起作用:
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &_
"\\e379583ad6.storage-1a.hosting.MYDOMAINNAME\sites\1a\e\e379583ad6\public_html\nurbek\stockdetails.mdb;"
默认情况下,IIS中禁用父路径,因此大多数共享主机提供程序不会修改此路径。也就是说,您可以使用IIS 7.0及更高版本支持的IIS配置文件自己修改它 这些步骤实施起来相当简单
web.config
的新文件
您不能在
web.config
文件中启用路径吗?