2014-01-30 27 views
0

我正在使用一個使用polyfill庫(webshims)和php進行服務器端驗證的HTML5客戶端驗證構建的「工作訂單表單」。HTML5 Web表單中的文件上傳

客戶希望用戶能夠在表單完成過程中上傳文件(廣泛的媒體,如.doc,.psd,甚至是CAD文件)。由於數據經過處理後發送到客戶的電子郵件地址,我也可以以某種方式附加這些文件嗎?我對MySQL的工作不太熟悉,所以我想知道創建這個有多困難。

我想我的服務器只允許最大上傳100MB(根據phpinfo),我相信客戶的最大文件傳輸到他們的收件箱大約20-40mb。

難以爲文件上傳創建服務器端驗證功能嗎?感謝您的反饋意見!

+2

這確實與HTML5或表單無關,而是服務器端上載處理程序。你應該重新命名你的問題。 –

+0

對實際問題的回答是 - 不,它不是 – 2014-01-30 18:55:26

回答

2

創建一個很難嗎?不。難以創建一個確定黑客不會用來接管你的服務器的真正安全的項目嗎?是。

我強烈建議研究如何在您允許客戶端上傳文件到服務器之前,以極其詳細的方式安全地執行此操作。在我的公司,我們確定風險太大。允許不知情的人上傳東西到你的服務器只是要求有人將病毒嵌入到圖像文件的元描述部分,或者PDF上的overflow the buffer,或者上週他們想出的任何其他技巧。你可以嘗試阻止你知道的人,但他們總是想出新的方法。

我知道的最好的解決方案是使用允許上傳通過它們發生的第三方服務。這些文件在完全檢查之後纔會到達您的服務器。次好的解決方案是爲您自己的服務器購買一項服務,爲您進行驗證。這與普通的計算機防病毒軟件一樣,但確保用戶通過此服務提供的內容進行上傳,而不是通過您自己的代碼進行上傳。之後就是你要求的並編寫你自己的驗證器,這是最便宜的解決方案,但也是最危險的。請記住,您在網上找到的任何安全建議,黑客也可以找到。