如何防止Access資料庫下載是一個很老的話題了,網路上的討論也比較多。這裡我們給幾種在ASP.NET下防止Access資料庫下載的方法。
我們這裡假設Access資料庫名字是 test.mdb。
1、把資料庫放在WEB目錄外
如你的網站目錄是D:www,你可以把資料庫放到D:data 這個資料夾裡,然後修改網站程式中的資料庫連線字串位址部分為:"D:datatest.mdb" ,這樣資料庫可以正常調用,但是無法下載的,因為它不在網站目錄裡。
假設在web.config中配置資料庫連接字串。例如:
<connectionStrings> <add name="Access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;data source=d:\data\test.mdb" providerName="System.Data.OleDb" /> </connectionStrings>
2、把資料庫放在App_Data系統資料夾下
從.Net2.0開始有App_Data目錄來專門存放資料文件,它可以用來放Access,SQL Server Express、XML等資料檔案。資料庫檔案放到App_Data資料夾的好處是可以防止被下載。而對於連接字串資料庫的檔案位置可以使用DataDirectory關鍵來表示它的實體路徑,從而在取得連接字串的時候不再需要使用Server.MapPath()轉換。
假設在web.config中配置資料庫連接字串。例如:
<connectionStrings> <add name="Access" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;data source=|DataDirectory|test.mdb" providerName="System.Data.OleDb" /> </connectionStrings>
|DataDirectory|就是代表的app_data資料夾。
3、重新命名資料庫檔案
將你的 Access 重新命名 *.asax:因為 ASP.NET 的處理機制中,預設情況下,對這樣的請求是直接拒絕的。依照這個思路,還可以把 Access 重新命名為 *.config,*.vb, *.cs 等等。
4、設定IIS,新增.mdb檔案類型映射
新增.mdb的擴充映射這個方法就是透過修改IIS設定來實現。只需2個步驟。
1. 設定IIS,將.mdb檔案類型對應到ASP.NET ISAPI。
以windows 2003為例,點選「開始」-」運行-》輸入「inetmgr」 回車,開啟「Internet 服務管理員」。在某一個網站上按滑鼠右鍵-》點選「屬性」 彈出此網站的屬性對話框。點擊“主目錄”選項卡,點擊“配置”按鈕,則會顯示“應用程式配置”對話框。點選「新增」增加一個映射,這時會顯示一個對話框,要你輸入可執行檔:「C:WINDOWS Microsoft.NET Framework v2.0.50727 aspnet_isapi.dll」;輸入副檔名:「.mdb」。如下圖所示
2. 配置asp.net的web.config文件,將.mdb文件類型映射到HttpForbiddenHandler HTTP handler。
使asp.net應用程式.mdb檔案類型對應到HttpForbiddenHandler HTTP 句柄。為了達到這上步,必須將下面的配置加到Web.config文件中
<httpHandlers> <add verb="*" path="*.mdb" type="System.Web.HttpForbiddenHandler" /> </httpHandlers>
5、添加ACCESS防下載字段
該方法的原理是:將數據庫的擴展名變成.aspx格式,從遠端訪問這個檔案的時候,IIS伺服器就會把它當成aspx程式來執行,而我們之前在ACCESS資料庫中插入了「」標記中才能執行,所以就會出現「缺少腳本關閉標記」 的500錯誤,別人就無法下載ACCESS資料庫了。如果只是簡單的在資料庫的文字或備註欄位加入「
1、先建立一個表,在SQL指令視窗內輸入如下內容:「create table [notdown]([notdown] oleobject)」
然後點選工具列中的「!」(執行),這樣,就會在目前資料庫內建立一個“notdown”表,其中的欄位名稱為“notdown”,欄位類型為“OLE物件”。 如圖1
2、將SQL查詢視窗中的內容更改為如下指令:「insert into [notdown](notdown) values (0x3C25)」
這句話的意思是向「notdown」表的「 notdown」欄位中插入「0x3C25」資料(「0x3C25」為字元「
執行完畢後,再次查看資料庫中的“表”,就會發現其中已多了一個“notdown”表,打開後字段顯示的是“長二進制資料” 如圖3
admin10000.com 這裡已經做好的防下載資料表notdown,你可以直接下載貼上到自己資料庫中使用。 notdown資料表
提示1:無論是ASP網站中還是ASP.NET網站,對於直接把Access資料庫後綴直接改為.asp和.aspx,用FlashGet等下載工具都照下不誤,不能起到防下載作用。
提示2:第5種方法通常用在ASP+ACCESS網站。

char 數組在 C 語言中存儲字符序列,聲明為 char array_name[size]。訪問元素通過下標運算符,元素以空終止符 '\0' 結尾,用於表示字符串終點。 C 語言提供多種字符串操作函數,如 strlen()、strcpy()、strcat() 和 strcmp()。

C語言中通過轉義序列處理特殊字符,如:\n表示換行符。 \t表示製表符。使用轉義序列或字符常量表示特殊字符,如char c = '\n'。注意,反斜杠需要轉義兩次。不同平台和編譯器可能有不同的轉義序列,請查閱文檔。

在 C 語言中,char 類型在字符串中用於:1. 存儲單個字符;2. 使用數組表示字符串並以 null 終止符結束;3. 通過字符串操作函數進行操作;4. 從鍵盤讀取或輸出字符串。

多線程和異步的區別在於,多線程同時執行多個線程,而異步在不阻塞當前線程的情況下執行操作。多線程用於計算密集型任務,而異步用於用戶交互操作。多線程的優勢是提高計算性能,異步的優勢是不阻塞 UI 線程。選擇多線程還是異步取決於任務性質:計算密集型任務使用多線程,與外部資源交互且需要保持 UI 響應的任務使用異步。

C 語言中符號的使用方法涵蓋算術、賦值、條件、邏輯、位運算符等。算術運算符用於基本數學運算,賦值運算符用於賦值和加減乘除賦值,條件運算符用於根據條件執行不同操作,邏輯運算符用於邏輯操作,位運算符用於位級操作,特殊常量用於表示空指針、文件結束標記和非數字值。

在 C 語言中,char 類型轉換可以通過:強制類型轉換:使用強制類型轉換符將一種類型的數據直接轉換為另一種類型。自動類型轉換:當一種類型的數據可以容納另一種類型的值時,編譯器自動進行轉換。

C語言中沒有內置求和函數,需自行編寫。可通過遍歷數組並累加元素實現求和:循環版本:使用for循環和數組長度計算求和。指針版本:使用指針指向數組元素,通過自增指針遍歷高效求和。動態分配數組版本:動態分配數組並自行管理內存,確保釋放已分配內存以防止內存洩漏。

在 C 語言中,char 和 wchar_t 的主要區別在於字符編碼:char 使用 ASCII 或擴展 ASCII,wchar_t 使用 Unicode;char 佔用 1-2 個字節,wchar_t 佔用 2-4 個字節;char 適用於英語文本,wchar_t 適用於多語言文本;char 廣泛支持,wchar_t 依賴於編譯器和操作系統是否支持 Unicode;char 的字符範圍受限,wchar_t 的字符範圍更大,並使用專門的函數進行算術運算。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。