是否有任何已經實現的方式來驗證Symfony中的文件擴展名?文件和圖像驗證程序只能驗證MIME類型。有沒有辦法做到這一點,或者我必須使用自定義驗證器/回調?Symfony3中的文件擴展名驗證
0
A
回答
2
如果您要驗證的所有內容都是文件擴展名,則可以使用RegexValidator。請記住,文件擴展名不能保證文件的內容。有人可以將可執行文件上傳爲.png。
例
new RegexValidator('/(.+)(\.jpg|\.png|\.gif)$/')
將匹配任何文件名以.jpg結束和.png或.gif
如果要在它更多的控制(例如,通過允許擴展的陣列)我會建議使用CallbackValidator或製作自己的。祝你好運!
+0
你對這個文件的內容是正確的。但是,如果我只驗證MIME類型,那麼有人可以在其註釋中上傳包含有效png內容和php代碼的'.php'擴展名的有效php文件。這就是爲什麼MIME類型和文件擴展名都應該被驗證。 Sf開發者沒有提供原生方法來執行此操作有點令人傷心 – user2394156
+0
確實如此,但這兩種方法都沒有真正保護PHP代碼的有效png內容。沒有上傳文件的最簡單方法是利用PHP,而不是讓PHP在上傳後觸摸上傳的文件,而是從Web服務器靜態地爲它們提供服務。 –
相關問題
- 1. 在Symfony3上驗證文件擴展名
- 2. 在Apex中驗證文件擴展名
- 3. 驗證上傳的文件擴展名
- 4. Drupal:驗證文件擴展名嗎?
- 5. 驗證文件擴展名 - Rails 4
- 6. 文件擴展驗證
- 7. 驗證在Firefox中上傳文件的文件擴展名
- 8. 驗證文件是它聲稱是它的文件擴展名
- 9. 在ASP.NET MVC3與C#中的遠程文件擴展名驗證?
- 10. 限制上傳到jQuery驗證中的文件擴展名
- 11. 在JavaScript中的文件擴展名驗證
- 12. 在JavaScript中驗證除擴展名外的pdf文件?
- 13. 驗證數組中的文件擴展名
- 14. 是否可以使用.bat文件驗證文件擴展名?
- 15. 文件擴展名mod_rewrite會干擾驗證文件嗎?
- 16. Rails驗證附件擴展
- 17. 驗證文件類型擴展
- 18. 忽略要驗證的文件擴展名
- 19. 驗證沒有擴展名的xls文件通過php
- 20. 如何使MVC AttributeFilter驗證張貼的文件擴展名
- 21. 驗證上傳的文件擴展名Yii2
- 22. 通過文件擴展名驗證腳本的參數?
- 23. 如何驗證具有有效擴展名的文件?
- 24. 如何僅在存在文件擴展名的情況下驗證文件擴展名?回覆:carrierwave
- 25. 驗證文件擴展名上傳多個文件上的文件夾
- 26. 如何從單個Regex驗證文件名和文件擴展名?
- 27. 文件驗證 - 內容類型或擴展名?
- 28. 如何驗證用戶輸入文件擴展名
- 29. jQuery驗證 - 如何不接受文件擴展名
- 30. 如何使用boost :: progam_option驗證文件擴展名和boost :: command_line_Parser
爲什麼要驗證它?你想知道安全嗎? – Keloo