Javascript Ajax在切换到Lighttpd后停止在Chrome中工作

Javascript Ajax在切换到Lighttpd后停止在Chrome中工作,javascript,ajax,json,lighttpd,Javascript,Ajax,Json,Lighttpd,我在Chrome中呈现文本/json时遇到问题。我使用YUI库发送ajax请求和处理响应 在我从使用mod_php的Apache切换到使用phpfpm作为fastcgi的Lighttpd之后,问题就出现了。Ajax从服务器请求一些内容,服务器返回text/json类型的内容(标题中声明的content text/json) 在除Chrome之外的所有浏览器中工作和渲染。奇怪的是,它可以在Firefox、Safari、IE中使用,但在Chrome中却无法使用 我不知道这里发生了什么。我甚至禁用了输

我在Chrome中呈现文本/json时遇到问题。我使用YUI库发送ajax请求和处理响应

在我从使用mod_php的Apache切换到使用phpfpm作为fastcgi的Lighttpd之后,问题就出现了。Ajax从服务器请求一些内容,服务器返回text/json类型的内容(标题中声明的content text/json)

在除Chrome之外的所有浏览器中工作和渲染。奇怪的是,它可以在Firefox、Safari、IE中使用,但在Chrome中却无法使用

我不知道这里发生了什么。我甚至禁用了输出压缩,因为我认为这是导致问题的原因,但问题仍然没有消失


我希望有人已经解决了这个问题,并找到了解决方法。

这很难解决,但我将其归结为: 在服务器端,在发送输出之前,我使用php设置了标题,如下所示: 标题(“内容类型:text/json;字符集=UTF-8”)

它在所有浏览器上都工作得很好,除了Chrome,它需要内容类型 注意大写的“T” 所以在我把它改成这个之后: 标题(“内容类型:text/json;字符集=UTF-8”)

在Chrome中,一切都可以正常工作。 为什么它与Apache/mod_php一起工作,而停止与Lighttpd/fastcgi一起工作?我猜 Apache不知何故在实际发送之前修复了所有的头文件,Lighttpd并不在意

我很惊讶我竟然能找到这个


我希望我能因解决自己的问题而获得一枚徽章,并希望它能帮助可能有同样问题的其他人。

我要做的第一件事是在Firefox中使用TamperData,以确保响应标题看起来绝对正确。尝试使用Fiddler检查响应…非常好的提示。我只是检查了我所有的脚本,幸运的是,大写字母T到处都是。