2013-07-25 127 views
0

我有一個應用程序,我可以將文件上傳到服務器。上傳到php腳本所在的文件夾中的文件。如果任何人發現URL,那麼文件可以被輕鬆查看,因此很容易破解和破壞數據。加密URL和保護服務器

我必須提供下載地址給用戶下載他們上傳的數據,但如果我提供確切的URL,他們是公平的丟失數據的機會。

我想知道有沒有一種方法來加密URL或任何其他方式來保護我的數據上傳文件夾。

我的網址就像www.hostname.com/myfolder/file.txt。由於這種普通的URL,我無法從Java中的URL編碼中受益。

我是一名Java程序員,我在php方面有經驗。

問候

+0

您可以創建一個腳本,它將處理請求,從該目錄讀取數據並將其發回。因此,您不會透露存儲數據的真實網址。 – user4035

+0

可能重複[如何保護文件免受未經授權的下載](http://stackoverflow.com/questions/15078973/how-to-go-about-protecting-files-from-unauthorized-downloads) – deceze

回答

1

一個幾句話:

  1. 使用會話,並讓用戶驗證自己的身份。
  2. 將文件放在一個upload/文件夾中,該文件夾位於Web根目錄之外。
  3. 當請求文件時,請檢查upload/文件夾是否存在並從那裏提供。
  4. 如果文件已經存在,請拒絕上傳。
  5. 從安全(HTTPS)主機運行所有內容。
+0

更好的是,將上傳/文件夾放在Web根目錄之外。 IE瀏覽器。如果index.php位於/ mysite/web中,請在/ mysite/upload中創建上傳文件夾。 – watermanio

+0

@Watermatron完全同意,我更新了我的答案。 –