Manual:Configuring file uploads/ru

From MediaWiki.org
Jump to: navigation, search

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

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

Contents

[edit] Требования

[edit] Убедитесь, что загрузка активирована в PHP-конфиге

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

file_uploads = on

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

[edit] Проверьте алиасы Apache

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

Alias /images/ /usr/share/images/

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

  • удалите этот алиас

или

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

[edit] Проверьте права доступа

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

[edit] Включение/отключение загрузки файлов

[edit] MediaWiki версии 1.5 и выше

Установите нужное значение параметра $wgEnableUploadsLocalSettings.php) для активации функции загрузки файлов:

$wgEnableUploads = true; # Разрешить загрузку файлов

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

$wgEnableUploads = false; # Запретить загрузку файлов
[edit] MediaWiki версий ниже 1.5

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

$wgDisableUploads = true; # Запретить загрузку файлов

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

$wgDisableUploads = false; # Разрешить загрузку файлов

[edit] Ограничение загрузки файлов

По-умолчанию, все зарегистрированные пользователи могут загружать файлы. Чтобы ограничить это - измените значение параметра $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 - для получения информации об ограничении доступа.

[edit] Настройка типов файлов

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

 $wgFileExtensions = array('png', 'gif', 'jpg', 'jpeg', 'doc', 'xls', 'mpp', 'pdf');

или

 $wgFileExtensions = array_merge($wgFileExtensions, array('png', 'gif', 'jpg', 'jpeg', 'doc', 'xls', 'mpp', 'pdf'));

или так

 # Добавление новых типов файлов к уже существующим в DefaultSettings.php
 $wgFileExtensions[] = 'doc';
 $wgFileExtensions[] = 'xls';
 $wgFileExtensions[] = 'pdf';
 $wgFileExtensions[] = 'mpp';

Вы также можете установить

$wgStrictFileExtensions = false;

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

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

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

[edit] Миниатюры

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

[edit] Максимальный размер загружаемого файла

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

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

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

[edit] Загрузка файлов напрямую с других сайтов

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

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

[edit] Восстановление изображений

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

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

[edit] См. также

[edit] Примечания

  1. post-max-size, руководство по PHP.
  2. upload-max-filesize, руководство по PHP.
Язык: English  • Deutsch • Bahasa Indonesia • 日本語 • Русский • 中文
Personal tools
Namespaces
Variants
Actions
Site
Support
Download
Development
Communication
Print/export
Toolbox