皮膚上傳
一旦基於ASCX文件格式的可以執行的皮膚被加入到ASPX頁面中,一些皮膚文件中的惡意腳本可能危害到整個系統。基於這個考慮,主機擁有對主機或者網站進行皮膚上傳的授權功能。用HOST賬戶登錄,選擇主機欄目下的主機設置,你可以看到這個選項。如果該選項被設置成Portal(默認),那麼網站的管理者可以不受到主機的干涉上傳自己網站的皮膚。
任何文件上傳的功能都被集中在DotNetNuke 中網站管理或主機管理下的文件管理欄目。在網站管理下的文件管理中上傳皮膚則這個皮膚僅適用於該站點,而如果在主機管理下上傳皮膚則適用於該主機的所有站點。文件管理器有一個上傳選項,選擇該選項則出現允許上傳皮膚和容器包的文件上傳界面。在上傳壓縮包之前應選擇適當的文件用途選項(應用程序通過這個來區分壓縮包的用途)。注意:如果沒有得到上傳授權,這個選項無法出現。:(
皮膚上傳機制將自動解壓縮皮膚包,創建必要的文件夾並釋放文件,而且還會通過ASP.NET腳本將HTML文件中的占位符替換掉以實現將HTML文件轉換成ASCX用戶控件的目的。這個轉換是按照數據庫中ModuleControls表中皮膚對象的定義來實現的。ASCX用戶控件文件和CSS樣式表文件依舊以相對路徑的方式關聯圖形文件。注意:如果你上傳的皮膚包同時包含了皮膚和容器( containers.zip and skins.zip ),那麼應該選擇皮膚包選項。