Ошибка MediaWiki: загрузка файла не работает
Я установил Mediawiki v1.24.1 на свой сервер, на котором работает RHEL7. Я установил его в / var / www / foohelp / wiki. Однако, когда я пытаюсь загрузить файл, я получаю следующую ошибку:
[f3eae72a] /foohelp/wiki/index.php/Special:Upload Exception from line 1871 of /var/www/foohelp/mediawiki-1.24.1/includes/filerepo/file/LocalFile.php: Could not acquire lock for 'User-default.png.'
Backtrace:
#0 /var/www/foohelp/mediawiki-1.24.1/includes/filerepo/file/LocalFile.php(1174): LocalFile->lock()
#1 /var/www/foohelp/mediawiki-1.24.1/includes/upload/UploadBase.php(738): LocalFile->upload(string, string, string, integer, array, boolean, User)
#2 /var/www/foohelp/mediawiki-1.24.1/includes/specials/SpecialUpload.php(467): UploadBase->performUpload(string, string, boolean, User)
#3 /var/www/foohelp/mediawiki-1.24.1/includes/specials/SpecialUpload.php(186): SpecialUpload->processUpload()
#4 /var/www/foohelp/mediawiki-1.24.1/includes/specialpage/SpecialPage.php(363): SpecialUpload->execute(NULL)
#5 /var/www/foohelp/mediawiki-1.24.1/includes/specialpage/SpecialPageFactory.php(584): SpecialPage->run(NULL)
#6 /var/www/foohelp/mediawiki-1.24.1/includes/MediaWiki.php(275): SpecialPageFactory::executePath(Title, RequestContext)
#7 /var/www/foohelp/mediawiki-1.24.1/includes/MediaWiki.php(584): MediaWiki->performRequest()
#8 /var/www/foohelp/mediawiki-1.24.1/includes/MediaWiki.php(435): MediaWiki->main()
#9 /var/www/foohelp/mediawiki-1.24.1/index.php(46): MediaWiki->run()
#10 {main}
Если я отредактирую /include/filebackend/FileBackendGroup.php и изменю LockManager на
'lockManager' => 'fsLockManager',
и измените разрешения следующим образом:
chown -R apache:apache images/
chown -R 755 images/
Я получаю следующую ошибку:
(Could not create directory "mwstore://local-backend/local-public)
Я пробовал большинство форумов, и нет решения, которое, кажется, решило бы мою проблему. Любая помощь будет оценена.
1 ответ
Решение
Попробуйте установить каталог tmp:
$wgTmpDirectory = "/var/www/tmp/";
И предоставить права:
chown -R apache:apache tmp/
chown -R 755 tmp/
Также попробуйте добавить глобальные переменные:
putenv("TMP=/var/www/tmp/");
putenv("HOME=/var/www");
И если вы используете imagemagick:
$wgImageMagickTempDir = "/var/www/tmp/";