国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

3.1SP1-將風訊的數據庫設置到虛擬目錄外的方法

2024-08-30 19:06:11
字體:
來源:轉載
供稿:網友

本文討論區:http://bbs.foosun.net/dispbbs.asp?boardID=22&ID=16236&page=1

風訊的功能很大,但不知道大家有沒有碰到這個問題?
現在許多虛擬空間都提供了專用數據庫防下目錄,但這個目錄一般在WEB虛擬目錄之外,要用../的方式引用才可以。
為了安全,總想將數據庫放在虛擬目錄之外,但由于風訊使用相對于虛擬目錄的絕對路徑,
而使我們無法用 ../date 的方式引用虛擬目錄前的文件。本人為此寫了一個插件,此文件可將引用地址設置為相對于磁盤的絕對路徑引用。就是將目錄轉換為F:/xx/xx 的方式。

假設你的網站FTP目錄在F:/webroot/myfile
而你的WEB虛擬根目錄在myfile下的web文件里。在myfile下還有一個data目錄放一個名為data.mdb的數據庫文件。
下面為實現方法,

第一步、新建一個文件名為 VirtualPath.asp 文件內容如下:

<%
Function VirtualPath(Way,PathName,DelPath)
Dim MainPath,ArrayPath,Num,TempPath,i

Select Case UCase(Way)
Case "MAINPATH"
MainPath=Server.MapPath("/")&"/"
Case "FILEPATH"
MainPath=Request.ServerVariables("PATH_TRANSLATED")
Case Else
Response.Write "您輸入的參數有誤,第一個參數請輸入MainPath或FilePath。使用MainPath將以站點所在的虛擬目錄為參照截取;FilePath將以當前文件所在目錄為參照截取。"
Response.End
End Select

ArrayPath=Split(MainPath,"/")
Num=UBound(ArrayPath)

IF DelPath<>"" Then
For i=0 to Num
IF UCase(ArrayPath(i))= UCase(DelPath) Then
Exit For
End IF
Next
IF i>Num Then
Response.Write "沒有您要截取的目錄,請檢查參數的正確性。也可設置為空,此時將使用全部目錄。"
Response.End
End IF
End IF

TempPath=ArrayPath(0)
For i=1 to Num-1
IF UCase(ArrayPath(i))<>UCase(DelPath) Then
TempPath=TempPath & "/" & ArrayPath(i)
Else
Exit For
End IF
Next

VirtualPath=TempPath Replace(PathName,"/","/")
End Function
%>

第二步、

將新建的文件 VirtualPath.asp 放在風訊的INC目錄里。找到風訊INC目錄下的 Cls_DB.asp 這個文件
在第一行增加代碼 <!--#include file="VirtualPath.asp" -->
在文件 Cls_DB.asp 里找到代碼 Server.MapPath(DataBaseConnectStr) 用下面的代碼代替
VirtualPath("mainpath",DataBaseConnectStr,"web")

到現在為止 大功告成。注重 VirtualPath 函數的幾個參數,

第一個參數可設置為 mainpath 或filepath 設置為 mainpath 則表示相對于站的WEW虛擬目錄
設置為 filepath 則表示相對于VirtualPath.asp文件的所在目錄。
第二個參數表示要設置的數庫地址
第二個參數表示要截取的目錄,例如 F:/webroot/web 假如如下設置的VirtualPath("mainpath","/data/data.mdb","web")
最終產生的路徑為 F:/webroot/data/data.mdb

現在你明白了嗎?此文件不僅可用于風訊,可以用于任何ASP Access的程序。

有愛好的朋友不妨在一起討論一下。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昆明市| 格尔木市| 锡林郭勒盟| 赤峰市| 汝阳县| 股票| 军事| 兴和县| 莱芜市| 新郑市| 华容县| 罗甸县| 渑池县| 娄底市| 攀枝花市| 客服| 榆中县| 桑植县| 长垣县| 资溪县| 龙泉市| 宁晋县| 闵行区| 南部县| 宣汉县| 邳州市| 宝山区| 恩平市| 金秀| 寿光市| 勐海县| 曲沃县| 宁陵县| 喀喇沁旗| 巴彦淖尔市| 清涧县| 闻喜县| 高阳县| 富锦市| 古田县| 龙陵县|