Сейчас 127 заметки.
Mediawiki настройка загрузки файлов
Начиная с версии 1.1 в MediaWiki загрузка изображений, по-дефолту, отключена. Проверьте требования:
Требования
Убедитесь, что загрузка активирована в PHP-конфигурации
Проверьте файл php.ini (обычно, он находится в Linux/etc/php/php.ini, /etc/php4/, /usr/local/lib/php.ini или в WindowsC:\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) для активации функции загрузки файлов:
$wgEnableUploads = true; # Разрешает загрузку файлов
Чтобы отключить загрузку файлов установите значение параметра в false:
$wgEnableUploads = false; # Запрещает загрузку файлов
MediaWiki версий ниже 1.5
В старых версия MediaWiki параметр включения/отключения загрузки файлов также расположен в LocalSettings.php, но имеет обратное название, т.е $wgDisableUploads со значением по-умолчанию:
$wgDisableUploads = true; # Запретить загрузку файлов
Измените значение для разрешения загрузки:
$wgDisableUploads = false; # Разрешить загрузку файлов
Ограничение загрузки файлов
По-умолчанию, все зарегистрированные пользователи могут загружать файлы. Чтобы ограничить это - измените значение параметра $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 может выглядеть так
$wgFileExtensions = array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf');
или
$wgFileExtensions = array_merge($wgFileExtensions, array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf'));
или так
# Добавление новых типов файлов к уже существующим в DefaultSettings.php
$wgFileExtensions[] = 'doc';
$wgFileExtensions[] = 'xls';
$wgFileExtensions[] = 'pdf';
$wgFileExtensions[] = 'mpp';
Вы также можете установить
$wgStrictFileExtensions = false;
для разрешения загрузки большинства файлов. Ограничение будет продолжать действовать на некоторые запрещённые типы файлов (см. загрузка файлов - не изображений)..
Если вы получаете ошибку "The file is corrupt or has an incorrect extension", убедитесь что определение MIME типов работает корректно.
Если вы позволили загружать все типы файлов - настройте антивирусную программу на особую проверку каталога загрузки.
Миниатюры
Для получения информации об автоматической генерации миниатюр, смотрите Manual:Image_thumbnailing.
Максимальный размер загружаемого файла
По умолчанию PHP позволяет загружает файлы размером не более 2 мегабайт. Если необходимо загрузить файл большего размера, измените параметр post_max_size в php.ini[1] и upload_max_filesize[2]. Для этого могут потребоваться права администратора - если же ваш сайт находится на стороннем сервере, обратитесь к техподдержке хостинга. Расположение 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, установленное, по-умолчанию, только у администраторов. Для обычных пользователей добавьте строку $wgGroupPermissions['user']['upload_by_url'] = true в LocalSettings.php. Заметьте, что это сделает ваш сайт более доступным для загрузки различных ненужных и опасных файлов.
Восстановление изображений
Восстановление изображений стало возможно в MediaWiki 1.8, а, начиная с Mediawiki 1.11, оно активировано по-умолчанию.
В MediaWiki 1.8 восстановление изображений контролируется опцией $wgSaveDeletedFiles с параметрами true и false, соответственно. Начиная с версии 1.11 управление осуществляется параметром $wgFileStore, а удалённые файлы, по-умолчанию, сохраняются в каталоге $wgUploadDirectory/deleted.
См. также
Примечания
- ↑ post-max-size, руководство по PHP.
- ↑ upload-max-filesize, руководство по PHP.