您的位置:主页 > 营销知识 > 建站资讯 > nginx php文件下载损坏日志文件提示fastcgi_temp failed Permiss
最近在开发一个项目,其中有一个以栏目需要下载pdf文件,服务器采用了nginx+php+mysql,但是点击下载后文件提示损坏,无法打开。
首先开始怀疑技术问题,让技术调程序调到怀疑人生,后来又怀疑防火墙问题。最后在nginx的日志中发现
[crit] 6019#0: *425 open() "/usr/local/nginx/fastcgi_temp/9/00/0000000009" failed (13: Permission denied) while reading upstream...
果断执行
chown -R www:www fastcgi_temp/*
问题解决了
以下是问题的原理
nginx 反向代理参数说明
proxy_connect_timeout 600;
#nginx跟后端服务器连接超时时间(代理连接超时)
proxy_read_timeout 600;
#连接成功后,后端服务器响应时间(代理接收超时)
proxy_send_timeout 600;
#后端服务器数据回传时间(代理发送超时)
proxy_buffer_size 32k;
#设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 4 32k;
#proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size 64k;
#高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k;
#设定缓存文件夹大小,大于这个值,将从upstream服务器传
问题就出在proxy_temp_file_write_size上,当你的文件超过该参数设置的大小时,nginx会先将文件写入临时目录(缺省为nginx安装目下/fastcgi_temp目录),
如果nginx对fastcgi_temp没有权限就会写不进去,结果就是只显示部分页面。
上海云轩网络版权所有 Copyright©2008-2018 http://www.lvon8.com All Rights Reserved 备案号:沪ICP备14049216号