Значение FILEINFO_MIME_TYPE не определено

#php #mime-types

#php #mime-типы

Вопрос:

Я загрузил веб-сайт на сервер, который выглядит почти так же, как мой локальный сервер, но похоже, что по какой-то причине на этом хосте не определен FILEINFO_MIME_TYPE . Есть ли что-то, что я мог бы сделать (без изменения php.ini)?

Заранее спасибо

РЕДАКТИРОВАТЬ: PHP 5.3.2 на сервере

Ответ №1:

FILEINFO_MIME_TYPE доступно только на php 5.3 . Обновление до версии 5.3 для устранения этой проблемы.

Подумайте о том, чтобы вернуться к FILEINFO_MIME (и просто использовать все, что было до a ; , если оно присутствует) или к наследию mime_get_content_type , если эта константа недоступна.

Комментарии:

1. PHP 5.3.2 установлен на сервере, извините, я не упомянул об этом. Я отредактирую свой вопрос.

2. @Kor я серьезно сомневаюсь в этом. Это может быть пользовательская версия php 5.3, или fileinfo может быть отключен. fileinfo_* Определены ли функции? phpinfo Упоминает ли fileinfo?

3. Кажется, это законный 5.3.2, но единственное, что в нем упоминается о fileinfo, — это класс SplFileInfo, который для меня выглядит так же, но может быть не связан с этой вещью

Ответ №2:

Если это не определено, я предполагаю, что вы ничего не сможете сделать без обновления до PHP 5.3 или установки расширения PECL finfo. Это не то, что включено в PHP <5.3 по умолчанию.

Убедитесь, что на вашем хостинге установлен PHP 5.3. Он может быть недоступен по умолчанию, но некоторые поставщики позволят вам использовать его, изменив конфигурацию в файле htaccess.