2011-11-17 105 views
0

我有这个复杂的问题,我无法找到答案。只有Firefox显示HTML代码,而不是页面

我有一个运行Python的HTTPServer服务网页。这些网页是在美丽的汤的帮助下在运行时创建的。问题是Firefox显示网页的HTML代码而不是实际的页面?我真的不知道知道是谁造成这个问题 - - Python中的httpserver - 美丽的汤 - HTML代码

网页HTML的任何情况下,我抄部分: -

<?xml version="1.0" encoding="iso-8859-1"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
    <title> 
    My title 
    </title> 
    <link href="style.css" rel="stylesheet" type="text/css" /> 
    <script src="./123_ui.js"> 
    </script> 
</head> 
<body> 
    <div> 
    Hellos 
    </div> 
</body> 
</html> 

刚为了帮助你,下面是我已经尝试过的东西 - - 我已经确认Python HTTPServer发送MIME头文件/ html - 只需复制并粘贴HTML代码将显示正确的页面为静态页面。我可以从这里知道问题出在HTTPServer端 - Firebug显示为空,“此元素没有样式规则,您可以为其创建规则。”显示

我只想知道错误是在美丽的汤或HTTPServer或HTML?

感谢, 阿米特

回答

2

你为什么要在文档的顶部添加呢?

<?xml version="1.0" encoding="iso-8859-1"?> 

这将使得浏览器认为整个文档是XMLXHTML。删除该行应使其正确呈现。我假定Firefox正在显示一个页面,其中包含一些元素,您可以展开/折叠以查看XML文档通常会显示的内容,即使HTTP标题可能会说它是text/html。

+0

你没有必要说。好吧,我删除它,它仍然是一样的。无论是否带有xml标签,我都会遇到同样的问题。 – abarik

+0

你有这个在线的地方,我们可以看看它吗? – animuson

+0

所以,伙计们,我终于解决了这个问题。原因是因为我没有发送MIME头文件(尽管我以为我是)内容类型为“text/html” 在python HTTPServer中,在写任何文件之前,您总是这样做: - \t self.send_response (301) \t self.send_header( “位置”,self.path + “/”) \t self.end_headers() \t#一旦调用了上面的方法,你可以将HTML发送到客户端 \t自我.wfile.write('任何HTML代码,你想写') – abarik

0

所以,大家好, 我终于解决了这个问题。究其原因是因为我不发送MIME头(虽然我认为我是)与内容类型“text/html的”

在蟒蛇的HttpServer,任何内容写入文件之前,你总是这样做: -

self.send_response(301) 
self.send_header("Location", self.path + "/") 
self.end_headers() 
# Once you have called the above methods, you can send the HTML to Client               
self.wfile.write('ANY HTML CODE YOU WANT TO WRITE') 
相关问题