我有一个运行 Apache 2 和 MediaWiki 1.21.2 的 64 位 CentOS 6.4 服务器(从另一台服务器的 1.19 安装升级,但问题不存在)。
问题是用户无法将新文件上传到服务器,并且我没有收到任何来自 apache 或 php 的错误消息。当我使用上传表单时,它只是刷新页面。
LocalSettings.php 已启用上传:
$wgEnableUploads = true;
$wgUseImageMagick = true;
$wgImageMagickConvertCommand = "/usr/bin/convert";
php.ini 已打开上传并打开错误消息:
file_uploads = On
upload_max_filesize = 20M
post_max_size = 20M
error_reporting = E_ALL & ~E_DEPRECATED
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = On
html_errors = On
selinux 被禁用(服务器不是面向公众的)
整个 mediawiki 目录归 apache 用户所有,images 目录是 chmod 到 777,/tmp 目录也是 chmod 到 777。
我不知道此时还能尝试什么。如果有人对此有任何想法,我将不胜感激。即使只是一种输出错误的方法也会很棒。
我终于想通了(我觉得自己没有早点注意到是一个正确的傻瓜)。LocalSettings.php 中的 $wgServer 设置中存在拼写错误,它使用服务器名称而不是基本 URL。
正如我之前提到的,wiki 已从另一台服务器移出。在测试新服务器时,我更改了名称,这样我就可以访问该站点而无需使用当前设置,不幸的是,当最终移动 wiki 并更新 DNS 时,忘记将其更新为真实 URL。
TL;DR,上传被重定向到遗忘。他们从未到达服务器进行处理,因此没有日志消息。
在我的辩护中,服务器的名称和 URL 仅相差两个字符。教我更彻底地处理我的迁移文档。