我已经在我的网络服务器上安装了 mediawiki(使用 directadmin),但我无法启用图像上传(在本例中为 .jpg)
我在设置中设置了 $wgEnableUploads = true;
并检查了 images
文件夹是否可写(设置为 755)。但是,当我尝试上传名为 testimage.jpg
的测试图像时,出现错误:
Could not store file "/tmp/phpjNV3oh" at "mwstore://local-backend/local-public/1/13/testimage.jpg".
因为我在共享虚拟主机上并且只能访问 directadmin 界面,所以我无法设置图像文件夹的所有者(答案是 here)。我试过将文件夹设置为 777,这也没有任何改变。
有人知道问题出在哪里吗?难道我用的是cloudflare?另外,为什么错误中返回的 url (mwstore://local-backend/local-public/1/13/testimage.jpg"
) 不是正常的 url (如 mysite. com/wiki/images
或其他)?
最佳答案
我在共享主机上遇到过两次这个问题,有两种解决方案。
一:
- 在
LocalSettings.php
上设置$wgHashedUploadDirectory = false
,然后尝试上传另一个文件。
这样做你所有的文件将被上传到 $wgUploadDirectory,/images/foo.jpg
而不是 /images/x/xx/foo.jpg
请注意,如果您现在更改此设置,则以后不应将其设置为 true
,否则您将需要手动将文件移动到散列目录结构中。
两个:
- 联系房东的支持服务
当我将情况通过电子邮件发送给主机的支持服务时,他们回复说 /my_wiki/images
中的所有文件夹都归 root 而不是 apache-user 所有,因为我不能 chown
他们做到了。
关于php - 使用 mediawiki 上传图片时出错(在 Directadmin 上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24111113/