MediaWiki文件上传的设置


新版的MediaWiki(1.11.1)默认情况下文件上传是关闭的,不过打开它非常容易。

编辑LocalSettings.php,修改下面这一行为true即可。

$wgEnableUploads       = true;</pre><p>之后页面左侧的“工具箱”中会多出一项“上传文件”,单击它即可上传文件。</p><p>但如果你要上传png格式的图片,就会发现,系统禁止了png类型的文件。调查includes/DefaultSettings.php的$wgFileExtensions 变量, 可以看到png格式是允许的。但为什么无法上传呢?JPG和GIF都可以正常上传啊。</p><p>原因是MediaWiki会判断上传文件的MIME Type,并禁止某些类型的MIME Type上传。 而文件的MIMEType获取是通过php的mime_magic模块进行的, 默认情况下这个模块无法正确识别png格式,所以png图像就无法得到正确的MIMEType,于是上传失败。</p><p>在phpinfo()中可以看到这样几行文字:</p><div class="ie5"><table class="style_table" border="0" cellspacing="1">    <tbody>        <tr>            <td class="style_td">mime_magic support</td>            <td class="style_td">enabled</td>        </tr>    </tbody></table></div><div class="ie5"><table class="style_table" border="0" cellspacing="1">    <tbody>        <tr>            <td class="style_td">Directive</td>            <td class="style_td">Local Value</td>            <td class="style_td">Master Value</td>        </tr>        <tr>            <td class="style_td">mime_magic.debug</td>            <td class="style_td">Off</td>            <td class="style_td">Off</td>        </tr>        <tr>            <td class="style_td">mime_magic.magicfile</td>            <td class="style_td">/etc/httpd/conf/magic</td>            <td class="style_td">/etc/httpd/conf/magic</td>        </tr>    </tbody></table></div><p>得知mime_magic的配置文件是 /etc/httpd/conf/magic。打开此文件就可以发现其中并没有PNG格式。</p><p>在GIF和JPG文件的附近添加这样一行:</p><pre># PNG<br />1       string          PNG             image/png

然后重新启动httpd。这样PNG文件就可以正常上传了。

没有评论: