gpt4 book ai didi

javascript - 切换到 Lighttpd 后,Ajax 在 Chrome 中停止工作

转载 作者:行者123 更新时间:2023-12-02 20:31:12 24 4
gpt4 key购买 nike

我在 Chrome 中渲染 text/json 时遇到问题。我使用 YUI 库发送 ajax 请求并处理响应。

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

可在除 Chrome 之外的所有浏览器中工作和呈现。这就是它的奇怪之处在于它可以在 Firefox、Safari、IE 中运行,但不能在 Chrome 中运行。

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

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

最佳答案

这真是令人难以置信,但我将其追溯到:在服务器端,我使用 php 在发送输出之前设置 header ,如下所示:header("内容类型:text/json; charset=UTF-8");

它在所有浏览器中都工作得很好,除了 Chrome,它需要 Content-Type注意大写的“T”所以我把它改成这样后:header("内容类型:text/json; charset=UTF-8");

Chrome 中也一切正常。为什么它与 Apache/mod_php 一起工作而停止与 Lighttpd/fastcgi 一起工作?我猜Apache 在实际发送之前以某种方式修复了所有 header ,而 Lighttpd 并不真正关心。

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

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

关于javascript - 切换到 Lighttpd 后,Ajax 在 Chrome 中停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4087976/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com