搜尋

首頁  >  問答  >  主體

java - 网站收费附件下载一般怎么做

语言JAVA、数据库MySQL、系统CentOS

网站服务器:WEB服务器一
文件服务器:FILE服务器一、FILE服务器二、FILE服务器三、FILE服务器四...
数据库服务器:SQL服务器一

第一、用户上传附件应该是在 WEB服务器一 服务器,是不是用文件同步软件同步到其他所有 文件服务器
第二、用户下载控制,是不是在 文件服务器 也要部署写好的一个控制权限的网站去读取文件,数据库共用 数据库服务器 服务器

这是我现在的想法,感觉好复杂,一般是这么做吗?

一定要能控制知道地址后直接下载的情况

阿神阿神2822 天前637

全部回覆(1)我來回復

  • 天蓬老师

    天蓬老师2017-04-17 13:01:49

    覺得需要有服務導向的開發的思路

    1、

    可以在檔案伺服器上放置一個有驗證的 upload.php 看你用什麼語言,還有其他方法。 。 。 。

    然後用戶傳文件到web 伺服器,web 伺服器再提交到檔案伺服器

    不過如果是長遠的打算應該把 上傳的功能做成 服務 的形式

    2、

    在網頁伺服器上做一個跳轉的連結如:

    http://www.xxxxxx.com/down?id=1234&userid=12345

    然後根據 id 和 userid 再加入些其它項 例如時間戳 計算出來一個 key

    如 使用 key = md5(id+userid+"sfasdfsfsdf"+12343423470)

    然後跳到檔案伺服器

    在檔案伺服器上也做一個這樣的頁面用來驗證這個 key

    http://file1.xxx.com/down?fileid=1234&securitykey=上面計算出來的key&userid=&time=時間戳

    然後使用串流的形式輸出檔案給使用者 (不要暴露給瀏覽器檔案的真實路徑,在伺服器上設定真實檔案存取權限)

    回覆
    0
  • 取消回覆