我有一個處理上傳文件的HTML表單。
我使用PHP變量$_FILES
(name, type, error, size, tmp_name
)將值存儲在我的數據庫中,並驗證上傳的文件。
我通過檢查MIME類型,而不是什麼,做大多數驗證。然而,在檢查文檔大小後,經過研究,我聽說用戶可以輕鬆修改$_FILES["size"]
的內容,並在其中創造假價值。
這是我網站的問題,因爲我打算限制某些用戶使用20MB upload
和更高等級的成員上傳最多100MB,等等......所以當然,如果一個普通用戶欺騙代碼說大小低於20mb,而文件實際上可能超過20MB。
所以問題是,我如何解決這個sittuation和正確檢查文件大小?
請注意,由於上傳的文件不是圖像,因此我無法使用getimagesize()
。
的文檔? – PauloASilva
我正在使用IIS。 –
我很抱歉,我無法幫助您使用IIS,但我確信您可以通過某種方式來限制最大上傳大小或客戶端最大主體大小,與nginx + PHP-FPM或Apache一樣。 'maxAllowedContentLength'(「指定IIS支持的請求中的最大內容長度」)。 [如何更改默認值](http://forums.iis.net/post/1543458.aspx) – PauloASilva