2014-04-22 26 views
2

嗨,大家好,我下載一個文件管理器http://www.roxyfileman.com我的MVC project.So我加入到我的項目,每一件事工作正常,但每個人都可以使用這個產品我意味着每個人都可以輸入網址並將文件上傳到我的主機!這文件管理JSON配置文件,你可以在這裏看到:樂聲文件管理器不接受會話路徑

{ 
"FILES_ROOT":  "fileman/Uploads", 
"SESSION_PATH_KEY": "FileManager", 
"THUMBS_VIEW_WIDTH": "140", 
"THUMBS_VIEW_HEIGHT": "120", 
"PREVIEW_THUMB_WIDTH":"300", 
"PREVIEW_THUMB_HEIGHT":"200", 
"MAX_IMAGE_WIDTH":  "0", 
"MAX_IMAGE_HEIGHT": "0", 
"INTEGRATION":  "tinymce3", 
"DIRLIST":   "asp_net/main.ashx?a=DIRLIST", 
"CREATEDIR":   "asp_net/main.ashx?a=CREATEDIR", 
"DELETEDIR":   "asp_net/main.ashx?a=DELETEDIR", 
"MOVEDIR":   "asp_net/main.ashx?a=MOVEDIR", 
"COPYDIR":   "asp_net/main.ashx?a=COPYDIR", 
"RENAMEDIR":   "asp_net/main.ashx?a=RENAMEDIR", 
"FILESLIST":   "asp_net/main.ashx?a=FILESLIST", 
"UPLOAD":   "asp_net/main.ashx?a=UPLOAD", 
"DOWNLOAD":   "asp_net/main.ashx?a=DOWNLOAD", 
"DOWNLOADDIR":  "asp_net/main.ashx?a=DOWNLOADDIR", 
"DOWNLOADDIR":  "asp_net/main.ashx?a=DOWNLOADDIR", 
"DELETEFILE":  "asp_net/main.ashx?a=DELETEFILE", 
"MOVEFILE":   "asp_net/main.ashx?a=MOVEFILE", 
"COPYFILE":   "asp_net/main.ashx?a=COPYFILE", 
"RENAMEFILE":  "asp_net/main.ashx?a=RENAMEFILE", 
"GENERATETHUMB":  "asp_net/main.ashx?a=GENERATETHUMB", 
"DEFAULTVIEW":  "list", 
"FORBIDDEN_UPLOADS": "zip js jsp jsb mhtml mht xhtml xht php phtml php3 php4 php5 phps shtml jhtml pl sh py cgi exe scr dll msi vbs bat com pif cmd vxd cpl htpasswd htaccess", 
"ALLOWED_UPLOADS": "jpg", 
"FILEPERMISSIONS": "0644", 
"DIRPERMISSIONS":  "0755", 
"LANG":    "auto", 
"DATEFORMAT":  "dd/MM/yyyy HH:mm" 

}

因此,大家可以看到,第二部分是會話密鑰,所以我會話添加到我的項目當用戶登錄時,你可以在這裏看到:

public ActionResult Login(LoginModel model, string returnUrl) 
    { 
     if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe)) 
     { 
      Session.Add("FileManager",true); 
      return RedirectToLocal(returnUrl); 
     } 

     // If we got this far, something failed, redisplay form 
     ModelState.AddModelError("", "The user name or password provided is incorrect."); 
     return View(model); 
    } 

,所以我說會話文件管理,我添加到json配置文件。但它不起作用。

問候 http://www.roxyfileman.com/install

回答

2

這是我做過什麼來解決我有同樣的問題的方案。

在FILEMAN ast_net夾

修改main.ashx從線201開始:

來自:

protected string GetFilesRoot(){ 
    string ret = GetSetting("FILES_ROOT"); 
    if (_context.Session["SESSION_PATH_KEY"] != null) 
     ret = (string)_context.Session[GetSetting("SESSION_PATH_KEY")]; 

    if(ret == "") 
     ret = _context.Server.MapPath("../Uploads"); 
    else 
     ret = FixPath(ret); 
    return ret; 
} 

到:

protected string GetFilesRoot(){ 
    string ret = GetSetting("FILES_ROOT"); 

    if (GetSetting("SESSION_PATH_KEY") != null) 
     ret = (string)_context.Session[GetSetting("SESSION_PATH_KEY")]; 

    if(ret == "") 
     ret = _context.Server.MapPath("../Uploads"); 
    else 
     ret = FixPath(ret); 
    return ret; 
} 

在conf.json我已經離開了FILES_ROOT可變空,並設置了「SESSION_PATH_KEY」:「SESSIONFILEPATH」

在我的登錄scrip t我們設置會話的位置: 會話[「SESSIONFILEPATH」] =「〜/ assests/1 /」;

從這裏你應該能夠動態地改變你正在做的文件夾位置,但對於這個例子我只是把它留下了。

我沒有MVC,但這應該爲它工作。

我希望它能幫助,如果它不請投=)

乾杯!

相關問題