Как проверить тип загружаемого файла?

1 23
SeVlad
На сайте с 03.11.2008
Offline
1609
#21
timo-71 #:
После того, как гугла пнул оптимизировать картинки, со временем все станут это делать. => процесс загрузки картинки, станет несколько сложней чем

:)

1. Насчёт "все" - ты сильно ошибаешься. ОЧЕНЬ сильно. :)

2. Картинки оптимизируют на сервере - единицы и те редко. Для обычного юзера на десктопе и проще и правильнее.

3. Процесс загрузки не станет сложнее. Те кто понимает -  уже делает как надо. Те же, кто [пока] нет - ровно так как ты написал в коде. :)

4. Да, ты прав - оптимизация обработка бинарников на сервере - один из методов борьбы с заливкой таких зловредов.


И всё это - не "из-за гугла", а следствие повышения квалификации.

Ну да, гугл можно сказать спасибо, что в тыкает в размеры графики. Правда, не всегда адекватно, но всё же хоть какая-то польза для ламеров.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
Sly32
На сайте с 29.03.2012
Offline
303
#22
timo-71 #:

Там, не !=100, но близко.

Тут и гугла инструмент неожиданный результат дает -  обработай все загруженные картинки и бонусом к пузомеркам, получишь безопасные картинки. 


А можно заэнкодить данные, например с помощью  base64.b64encode и обойтись без гугла)

Вообще ответ был получен на первой странице.

А потом пришли флудить любители править на сервере и как обычно все ушло в сторону.

Я обрабатываю документы, а не картинки. И вопрос остается - самому из бинарника вытягивать МИМЕ или взять нужную библиотеку. Для работы с лямбдами это важно.

И кстати, в лямбде вообще нет пхп, так что его внедрение ничего не даст)

S
На сайте с 13.10.2014
Offline
171
#23

если у вас всего два формата png и jpeg то самый простой и быстрый вариант проверить сигнатуры файлов.

первые три байта jpeg  == FF D8 FF
первые четыре байта png == xx 50 4E 47  (xx как правило 89h)

более сложный путь, проверить mime с помощью  ОС. (в принципе, там происходит примерно то же самое, только список вариантов куда больше )

Sly32
На сайте с 29.03.2012
Offline
303
#24
silicoid #:

если у вас всего два формата png и jpeg то самый простой и быстрый вариант проверить сигнатуры файлов.

первые три байта jpeg  == FF D8 FF
первые четыре байта png == xx 50 4E 47  (xx как правило 89h)

более сложный путь, проверить mime с помощью  ОС. (в принципе, там происходит примерно то же самое, только список вариантов куда больше )

Я же привел пример данных в первом посте и писал что в основном будет работа с пдф

S
На сайте с 13.10.2014
Offline
171
#25
Sly32 #:

Я же привел пример данных в первом посте и писал что в основном будет работа с пдф

у пдф тоже есть своя сигнатура . 25h 50h 44h 46h смещение 0 байт

Проверяйте ее и будет вам счастье

1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий