Сейчас 127 заметки.

Mediawiki настройка загрузки файлов: различия между версиями

Материал из ЗАметки
(Новая страница: «Начиная с версии 1.1 в MediaWiki загрузка изображений, по-дефолту, отключена. Проверьте требов...»)
 
Строка 1: Строка 1:
 
Начиная с версии 1.1 в MediaWiki загрузка изображений, по-дефолту, отключена. Проверьте требования:
 
Начиная с версии 1.1 в MediaWiki загрузка изображений, по-дефолту, отключена. Проверьте требования:
 
==== Требования ====
 
===== Убедитесь, что загрузка активирована в PHP-конфигурации =====
 
Проверьте файл ''php.ini'' (обычно, он находится в Linux''/etc/php/php.ini'', ''/etc/php4/'', ''/usr/local/lib/php.ini'' или в Windows''C:\Windows\php.ini'' на Windows) на наличие таких параметров как:
 
 
file_uploads = on
 
 
Если этот параметр не активирован - PHP-скрипты не смогут использовать функции загрузки файлов.
 
 
===== Проверьте алиасы Apache =====
 
Некоторые конфигурации Apache имеют следующий алиас в ''httpd.conf'':
 
 
Alias /images/ /usr/share/images/
 
 
В этом случае, выполните одно из следующих действий
 
 
* удалите этот алиас
 
или
 
*[[Manual:$wgUploadDirectory/ru|измените каталог загрузки]]
 
 
Если у вас нет доступа к httpd.conf и вы не можете проверить наличие алиаса, обратитесь в техподдержку вашего хостинга для получения этой информации.
 
  
 
===== Проверьте права доступа =====
 
===== Проверьте права доступа =====
 
Права доступа на каталог загрузки должны быть настроены так, чтобы обычный пользователь не имел возможности загрузить и выполнить другие скрипты, способные навредить вашему сайту.
 
Права доступа на каталог загрузки должны быть настроены так, чтобы обычный пользователь не имел возможности загрузить и выполнить другие скрипты, способные навредить вашему сайту.
  
==== Включение/отключение загрузки файлов ====
+
==== Включение и отключение загрузки файлов в Mediawiki ====
===== MediaWiki версии 1.5 и выше =====
 
Установите нужное значение параметра '''[[Manual:$wgEnableUploads|$wgEnableUploads]]''' (в ''[[LocalSettings.php]]'') для активации функции загрузки файлов:
 
 
 
<source lang="php">
 
$wgEnableUploads = true; # Разрешает загрузку файлов
 
</source>
 
  
Чтобы отключить загрузку файлов установите значение параметра в false:
+
Установите нужное значение параметра в LocalSettings.php для активации функции загрузки файлов:
  
<source lang="php">
 
$wgEnableUploads = false; # Запрещает загрузку файлов
 
</source>
 
  
===== MediaWiki версий ниже 1.5 =====
+
$wgEnableUploads = true; # Разрешает загрузку файлов
В старых версия MediaWiki параметр включения/отключения загрузки файлов также расположен в ''[[LocalSettings.php]]'', но имеет обратное название, т.е '''[[Manual:$wgDisableUploads|$wgDisableUploads]]''' со значением по-умолчанию:
 
  
<source lang="php">
 
$wgDisableUploads = true; # Запретить загрузку файлов
 
</source>
 
  
Измените значение для разрешения загрузки:
+
Чтобы отключить загрузку файлов установите значение параметра в false:
 
 
<source lang="php">
 
$wgDisableUploads = false; # Разрешить загрузку файлов
 
</source>
 
  
==== Ограничение загрузки файлов ====
 
По-умолчанию, все зарегистрированные пользователи могут загружать файлы. Чтобы ограничить это - измените значение параметра [[Manual:$wgGroupPermissions|$wgGroupPermissions]]:
 
  
* Запретить обычным пользователям загружать файлы: <br/><tt>$wgGroupPermissions['user']['upload'] = false;</tt>
+
$wgEnableUploads = false; # Запрещает загрузку файлов
* Разрешить загружать файлы только членам созданной группы «uploadaccess»: <br/><tt>$wgGroupPermissions['uploadaccess']['upload'] = true;</tt>
 
* Разрешить «подтверждённым» (не новичкам) пользователям загружать файлы: <br/><tt>$wgGroupPermissions['autoconfirmed']['upload'] = true;</tt>
 
  
Право заменять существующие файлы даётся разрешением - <tt>reupload</tt>:
 
* Запретить обычным пользователям заменять существующие файлы: <br/><tt>$wgGroupPermissions['user']['reupload'] = false;</tt>
 
* Разрешить «подтверждённым» (не новичкам) пользователям заменять существующие файлы: <br/><tt>$wgGroupPermissions['autoconfirmed']['reupload'] = true;</tt>
 
  
Для детальной информации о правах пользователей смотрите '''[[Help:User rights]]''' и [[Manual:Preventing access]] - для получения информации об ограничении доступа.
 
  
 
==== Настройка типов файлов ====
 
==== Настройка типов файлов ====
Чтобы разрешить загрузку какого-либо типа файлов, добавьте его расширение в [[Manual:$wgFileExtensions|$wgFileExtensions]]. К примеру, параметр $wgFileExtensions может выглядеть так
+
Чтобы разрешить загрузку какого-либо типа файлов, добавьте его расширение в $wgFileExtensions. К примеру, параметр $wgFileExtensions может выглядеть так
<source lang="php"> $wgFileExtensions = array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf');</source>
+
$wgFileExtensions = array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf');
 
или
 
или
<source lang="php"> $wgFileExtensions = array_merge($wgFileExtensions, array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf'));</source>
+
$wgFileExtensions = array_merge($wgFileExtensions, array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf'));
или так
 
<source lang="php">
 
# Добавление новых типов файлов к уже существующим в DefaultSettings.php
 
$wgFileExtensions[] = 'doc';
 
$wgFileExtensions[] = 'xls';
 
$wgFileExtensions[] = 'pdf';
 
$wgFileExtensions[] = 'mpp';
 
</source>
 
Вы также можете установить
 
<source lang="php">
 
$wgStrictFileExtensions = false;
 
</source>
 
для разрешения загрузки большинства файлов. Ограничение будет продолжать действовать на некоторые запрещённые типы файлов (см. ''[[Meta:Help:Images and other uploaded files#Uploading non-image files|загрузка файлов - не изображений]]'')..
 
 
 
Если вы получаете ошибку "The file is corrupt or has an incorrect extension", убедитесь что [[Manual:Mime type detection|определение MIME типов]] работает корректно.
 
 
 
Если вы позволили загружать все типы файлов - настройте антивирусную программу на особую проверку каталога загрузки.
 
 
 
==== Миниатюры ====
 
Для получения информации об автоматической генерации миниатюр, смотрите ''[[Manual:Image_thumbnailing]]''.
 
 
 
== Максимальный размер загружаемого файла ==
 
По умолчанию PHP позволяет загружает файлы размером не более 2 мегабайт. Если необходимо загрузить файл большего размера, измените параметр '''post_max_size''' в ''php.ini''<ref name = "post">[http://de2.php.net/manual/en/ini.core.php#ini.post-max-size  post-max-size, руководство по PHP.]</ref> и  upload_max_filesize<ref name = "upload">[http://de2.php.net/manual/en/ini.core.php#ini.upload-max-filesize  upload-max-filesize], руководство по PHP.</ref>. Для этого могут потребоваться права администратора - если же ваш сайт находится на стороннем сервере, обратитесь к техподдержке хостинга. Расположение ''php.ini'' в разных дистрибутивах различно - попробуйте выполнить '''find */*/*/php.ini''', чтобы выполнить поиск конфигурационного файла.
 
 
 
MediaWiki покажет предупреждение, если вы попытаетесь загрузить файл, размером превышающем установленный лимит в параметре [[Manual:$wgUploadSizeWarning|$wgUploadSizeWarning]]. Это ограничение не зависит от жёсткого лимита PHP.
 
 
 
* Замечание: после изменения php.ini может потребоваться перезапуск Apache.
 
 
 
== Загрузка файлов напрямую с других сайтов ==
 
Если вы хотите разрешить пользователям загружать файлы напрямую с других сайтов, вместо копирования файла на локальный компьютер, установите <tt>[[Manual:$wgAllowCopyUploads|$wgAllowCopyUploads]] = true</tt> (для того, чтобы эта функция сработала, в php необходима поддержка функции curl, в Windows для её включения достаточно раскомментировать '''extension=php_curl.dll''' в файле ''php.ini''). На форме загрузки появится дополнительное поле для ссылки, которое активируется после нажатия на соответствующую кнопку (чекбокс).
 
 
 
Чтобы использовать эту возможность, пользователи должны иметь [[Manual:$wgGroupPermissions|разрешение]] <tt>upload_by_url</tt>, установленное, по-умолчанию, только у администраторов. Для обычных пользователей добавьте строку </tt>[[Manual:$wgGroupPermissions|$wgGroupPermissions]]['user']['upload_by_url'] = true</tt> в ''[[LocalSettings.php]]''. Заметьте, что это сделает ваш сайт более доступным для загрузки различных ненужных и опасных файлов.
 
 
 
== Восстановление изображений ==
 
Восстановление изображений стало возможно в MediaWiki 1.8, а, начиная с Mediawiki 1.11, оно активировано по-умолчанию.
 
 
 
В MediaWiki 1.8 восстановление изображений контролируется опцией [[Manual:$wgSaveDeletedFiles|$wgSaveDeletedFiles]] с параметрами ''true'' и ''false'', соответственно. Начиная с версии 1.11 управление осуществляется параметром [[Manual:$wgFileStore|$wgFileStore]], а удалённые файлы, по-умолчанию, сохраняются в каталоге '''[[Manual:$wgUploadDirectory|$wgUploadDirectory]]/deleted'''.
 
 
 
== См. также ==
 
* [[User:Flominator/Upload problems]]
 
 
 
== Примечания ==
 
<references />
 
 
 
{{Languages}}
 
[[Category:MediaWiki configuration/ru|{{PAGENAME}}]]
 

Версия 21:39, 2 октября 2012

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

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

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

Включение и отключение загрузки файлов в Mediawiki

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


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


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


$wgEnableUploads = false; # Запрещает загрузку файлов


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

Чтобы разрешить загрузку какого-либо типа файлов, добавьте его расширение в $wgFileExtensions. К примеру, параметр $wgFileExtensions может выглядеть так $wgFileExtensions = array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf'); или

$wgFileExtensions = array_merge($wgFileExtensions, array('swf', 'gif', 'fla', 'jpeg', 'doc', 'pdf'));