我在 x86 机器上运行 Ubuntu 服务器 10.04.1,一切似乎正常,但是,我还安装了 apache2 和 proftpd,并根据文档对它们进行了配置。
我在下载非文本文件(二进制文件、图像等)时遇到问题,它们似乎被视为文本,导致客户端计算机收到不可用的文件。我在服务器上尝试了 vsftpd 和当前的 proftpd,结果相同。使用 http(从 Apache 服务器)下载文件时也会出现同样的情况。我尝试删除 ufw(防火墙)并重新启动,但没有任何效果。问题似乎出在 Ubuntu 本身,这是一个严重的问题,因为它使这台机器无法用作 Web 服务器。
有没有什么解决办法?是什么?
答案1
如果您不理会它,Apache 会配置为执行正确的操作。它会确定文件的内容并提供正确的 MIME 类型。请尝试以下操作:
- 使用常见文件类型的示例文件:JPEG。
检查服务器是否确实返回了错误的 MIME 类型。为此,请在本地使用 curl,例如:
curl -I http://localhost/file.jpg
MIME 类型应该出现在标题中。
改回默认配置(Ubuntu 软件包中的配置)。Apache 配置可能有点难以正确设置。将文件放入 www(可能
/var/www
)从已知良好配置逐渐转变为已知不良配置。这样你就能找出自己失误的地方。
您所遇到的困难proftpd
可能完全是另外一个问题。
答案2
也许 Apache“mime”模块未启用?尝试启用它:
sudo a2enmod mime
然后检查您/etc/apache2/mods-enabled/mime.conf
的文件以了解更多详细信息。您可能还需要检查/etc/mime.types
文件,其中包含从扩展名到 MIME 类型的映射。有关更多详细信息,请参阅官方Apache mod_mime 文档。