Col*_*inM 5 nginx fastcgi php-fpm
我已经从运行 Wordpress 博客的源代码编译了 PHP 5.3.3 和 nginx 0.8.47。Wordpress 生成的 RSS 提要在大约 16k 处被截断(包括标题为 16k+90b)。通过将以下内容添加到我的 nginx 配置中:
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;
Run Code Online (Sandbox Code Playgroud)
问题消失了.. 但是,从我在Nginx wiki 页面上阅读的内容来看,缓冲区仅确定缓冲何时会溢出到磁盘上。由于缓冲区太小,没有任何迹象表明响应可以被截断。
所以我的问题是,为什么在更改此设置之前响应会被截断?似乎请求不应该被截断,只是由于磁盘缓冲而变慢了一点。
附加信息:
根据Ochoto关于检查写入权限的评论,我成功地使其发挥作用。我以与默认用户不同的用户身份运行 Nginx,因此必须更改默认临时路径的权限。对于 RHEL 安装,/var/lib/nginx/tmp/fastcgi它的默认权限为 700:
chown -R webuser /var/lib/nginx/tmp
Run Code Online (Sandbox Code Playgroud)
我在 Scientific Linux 7 上使用 SL 存储库中的软件包时遇到了这个问题。在使用 Nginx 提供的软件包的 Scientific Linux 6 上,这一步对我来说不是必需的,该软件包具有 755 的权限/var/cache/nginx