nginx 提供损坏的字符(Linux 上的 nginx 作为 vbox 中的客户系统)

nginx 提供损坏的字符(Linux 上的 nginx 作为 vbox 中的客户系统)

我在 debian 6.0.5 上安装了 nginx 1.2.0-1。我有文件 test.css。我用“abcd1234”填充它。在浏览器中打开它。然后我将内容更改为“mnop”。我收到响应“abcd”。

我使用 Virtual Box 在 Windows(主机)和 Debian(客户机)之间共享文件夹中的所有文件。当我将文件放在其他地方时,问题不再发生!

知道是什么原因造成的吗?谢谢

(我在发现问题时一直在编辑问题)

答案1

我认为您应该禁用 Nginx 的“sendfile”。在您的 Nginx 配置中搜索“sendfile”,并将其从“on”更改为“off”。它可以放在您的“http{}”块中:

sendfile off;

这个帖子关于 Nginx、vboxsf 和发送文件

答案2

您需要检查的一件事是正在发送的 Content-Type 标头。

打开 Chrome 的开发者工具,转到“网络”选项卡,再次加载 CSS 文件。点击左侧的文件名,然后点击“标头”选项卡,向下滚动到响应标头。您将看到如下一行:

Content-Type:text/html; charset=UTF-8

它符合您的预期吗?如果符合,则问题可能出在您的浏览器设置中。您在第二个浏览器中得到相同的结果吗?如果不是,则问题出在您的某个浏览器的浏览器设置中。

相关内容