Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
本地python简单http服务器在windows中发送错误的mime类型,但在linux for.svg中不发送_Python_Windows_Firefox_Svg - Fatal编程技术网

本地python简单http服务器在windows中发送错误的mime类型,但在linux for.svg中不发送

本地python简单http服务器在windows中发送错误的mime类型,但在linux for.svg中不发送,python,windows,firefox,svg,Python,Windows,Firefox,Svg,我已经用python创建了一个简单的http服务器(我没有涉及do_GET函数) 在linux(ubuntu)中,一切正常 但是在windows中,当我想在firefox中打开.svg文件时,它会询问我是想下载还是保存它 在本网站上的前一个问题中已经确定,这是因为服务器发送了错误的mime类型 在windows中,响应标头的内容类型为: “应用程序/八位字节流” 在linux中,响应标头的内容类型为: “图像/svg+xml” 在这两种情况下使用的本地服务器完全相同 有人知道我应该怎么做才能解决

我已经用python创建了一个简单的http服务器(我没有涉及do_GET函数)

在linux(ubuntu)中,一切正常 但是在windows中,当我想在firefox中打开.svg文件时,它会询问我是想下载还是保存它

在本网站上的前一个问题中已经确定,这是因为服务器发送了错误的mime类型

在windows中,响应标头的内容类型为: “应用程序/八位字节流”

在linux中,响应标头的内容类型为: “图像/svg+xml”

在这两种情况下使用的本地服务器完全相同

有人知道我应该怎么做才能解决这个问题吗(换句话说,让svg发送正确的mime类型)? 我尝试在svg文件中使用meta标记来指定没有帮助的内容

tnx

编辑:

愚蠢的我,我真的需要学习如何更好地阅读文档。 类(simpleHTTPServer.simpleRequestHandler)有一个extension\u map属性,它是一个将扩展映射到MIME类型的字典。这正是我需要的

如果你愿意,MODS可以随意删除这个问题


还感谢mikko的回答,它让我找到了正确的路径

您需要mimetypes.add_type()

Linux提供了系统范围的mimetypes配置和最新的条目。显然Windows没有