Manual:Configuring file uploads/ru

MediaWiki позволяет загружать различные медиа-файлы. В этой статье описываются технические аспекты этой возможности. Для получения общих сведений о загрузке изображений смотрите Manual:Image Administration и Help:Images/ru.

Начиная с версии 1.1, в MediaWiki загрузка изображений, по-умолчанию, отключена. Вы можете активировать эту функцию, но, для начала, проверьте требования:

Убедитесь, что загрузка активирована в PHP-конфиге
Проверьте php.ini (обычно, он находится в /etc/php/php.ini, /etc/php4/, /usr/local/lib/php.ini или C:\Windows\php.ini на Windows) на наличие следующего параметра:

file_uploads = on

Если этот параметр не активирован - PHP-скрипты не смогут использовать функции загрузки файлов.

Проверьте алиасы Apache
Некоторые конфигурации Apache имеют следующий алиас в httpd.conf:

Alias /images/ /usr/share/images/

В этом случае, выполните одно из следующих действий

или
 * удалите этот алиас
 * измените каталог загрузки

Если у вас нет доступа к httpd.conf и вы не можете проверить наличие алиаса, обратитесь в техподдержку вашего хостинга для получения этой информации.

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

MediaWiki версии 1.5 и выше
Установите нужное значение параметра $wgEnableUploads (в LocalSettings.php) для активации функции загрузки файлов:

Чтобы отключить загрузку файлов установите значение параметра в false:

MediaWiki версий ниже 1.5
В старых версия MediaWiki параметр включения/отключения загрузки файлов также расположен в LocalSettings.php, но имеет обратное название, т.е $wgDisableUploads со значением по-умолчанию:

Измените значение для разрешения загрузки:

Ограничение загрузки файлов
По-умолчанию, все зарегистрированные пользователи могут загружать файлы. Чтобы ограничить это - измените значение параметра $wgGroupPermissions:


 * Запретить обычным пользователям загружать файлы: $wgGroupPermissions['user']['upload'] = false;
 * Разрешить загружать файлы только членам созданной группы «uploadaccess»: $wgGroupPermissions['uploadaccess']['upload'] = true;
 * Разрешить «подтверждённым» (не новичкам) пользователям загружать файлы: $wgGroupPermissions['autoconfirmed']['upload'] = true;

Право заменять существующие файлы даётся разрешением - reupload:
 * Запретить обычным пользователям заменять существующие файлы: $wgGroupPermissions['user']['reupload'] = false;
 * Разрешить «подтверждённым» (не новичкам) пользователям заменять существующие файлы: $wgGroupPermissions['autoconfirmed']['reupload'] = true;

Для детальной информации о правах пользователей смотрите Help:User rights и Manual:Preventing access - для получения информации об ограничении доступа.

Настройка типов файлов
Чтобы разрешить загрузку какого-либо типа файлов, добавьте его расширение в $wgFileExtensions. К примеру, параметр $wgFileExtensions может выглядеть так или или так Вы также можете установить для разрешения загрузки большинства файлов. Ограничение будет продолжать действовать на некоторые запрещённые типы файлов (см. загрузка файлов - не изображений)..

Если вы получаете ошибку "The file is corrupt or has an incorrect extension", убедитесь что определение MIME типов работает корректно.

Если вы позволили загружать все типы файлов - настройте антивирусную программу на особую проверку каталога загрузки.

Миниатюры
Для получения информации об автоматической генерации миниатюр, смотрите Manual:Image_thumbnailing.

Максимальный размер загружаемого файла
По умолчанию PHP позволяет загружает файлы размером не более 2 мегабайт. Если необходимо загрузить файл большего размера, измените параметр post_max_size в php.ini и upload_max_filesize. Для этого могут потребоваться права администратора - если же ваш сайт находится на стороннем сервере, обратитесь к техподдержке хостинга. Расположение php.ini в разных дистрибутивах различно - попробуйте выполнить find */*/*/php.ini, чтобы выполнить поиск конфигурационного файла.

MediaWiki покажет предупреждение, если вы попытаетесь загрузить файл, размером превышающем установленный лимит в параметре $wgUploadSizeWarning. Это ограничение не зависит от жёсткого лимита PHP.


 * Замечание: после изменения php.ini может потребоваться перезапуск Apache.

Загрузка файлов напрямую с других сайтов
Если вы хотите разрешить пользователям загружать файлы напрямую с других сайтов, вместо копирования файла на локальный компьютер, установите $wgAllowCopyUploads = true (для того, чтобы эта функция сработала, в php необходима поддержка функции curl, в Windows для её включения достаточно раскомментировать extension=php_curl.dll в файле php.ini). На форме загрузки появится дополнительное поле для ссылки, которое активируется после нажатия на соответствующую кнопку (чекбокс).

Чтобы использовать эту возможность, пользователи должны иметь разрешение upload_by_url, установленное, по-умолчанию, только у администраторов. Для обычных пользователей добавьте строку </tt>$wgGroupPermissions['user']['upload_by_url'] = true</tt> в LocalSettings.php. Заметьте, что это сделает ваш сайт более доступным для загрузки различных ненужных и опасных файлов.

Восстановление изображений
Восстановление изображений стало возможно в MediaWiki 1.8, а, начиная с Mediawiki 1.11, оно активировано по-умолчанию.

В MediaWiki 1.8 восстановление изображений контролируется опцией $wgSaveDeletedFiles с параметрами true и false, соответственно. Начиная с версии 1.11 управление осуществляется параметром $wgFileStore, а удалённые файлы, по-умолчанию, сохраняются в каталоге $wgUploadDirectory/deleted.

См. также

 * User:Flominator/Upload problems