0

我正在实现一个处理GETHEAD请求的 HTTP/1.0 服务器。

我已经完成了DateLast-ModifiedContent-Length,但我不知道如何获取Content-Type文件。

它必须返回目录的目录(我可以使用stat()函数),常规文件,text/htmltext文件html,以及image/gif图像或gif文件。

这是否应该使用文件名进行硬编码?

我想知道是否有任何功能可以得到这个Content-Type

4

2 回答 2

0

您可以查看文件扩展名(这是大多数 Web 服务器所做的——例如查看/etc/mime.types文件;或者您可以libmagic通过查看文件的前几个字节来自动确定内容类型。

于 2013-10-23T04:34:57.963 回答
0

这取决于你想变得多复杂。

如果有问题的文件都被正确命名并且只有几种类型需要处理,那么有一个基于开关的文件后缀就足够了。在极端情况下,无论文件是什么,做出正确的决定都可能需要复制 Unixfile命令的功能或在有问题的文件上运行它(然后将输出转换为正确的Content-Type.

于 2013-10-23T04:35:35.897 回答