普通用户启动
将nginx相关文件夹赋权给普通用户
chown www /usr/local/*
chown www /var/log/nginx
chown www /var/log/nginx/*
chown www /etc/nginx
chown www /etc/nginx/*
chown www /etc/nginx/conf.d/*
chown www /usr/sbin/nginx
chown www /var/cache/nginx
mkdir /var/run/nginx
chown www /var/run/nginx
查看nginx启动用户
ps aux | grep "nginx: worker process" | awk '{print $1}'
www
www
可能出现多行结果,其中一个是grep的结果
nginx启动用户配置
配置中的启动用户需要与实际启动用户一致
vi /etc/nginx/nginx.conf
user www; # 这个用户要和上面的用户保持一致
worker_processes auto;
worker_rlimit_nofile 51200;
设置Nginx的缓存过期时间
server
{
listen 80;
server_name example.com; #主机名
location / {
proxy_cache cache_one;
proxy_cache_valid 200 304 3d; #正常状态缓存时间3天,按实际情况修改
proxy_cache_key $host$uri$is_args$args;
proxy_pass http://www.baidu.com/; #反代的网站
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
expires 10d; #默认10天缓存
access_log /home/wwwlogs/mjj.log access; #日志文件,不开启日志请改为access_log off;
}
}
问题
net::ERR_INCOMPLETE_CHUNKED_ENCODING
文件大小超过配置的proxy_temp_file_write_size值时,nginx会将文件写入到临时目录下(默认为/proxy_temp)
如果nginx中/proxy_temp过大或者没有权限,就写不进去。
直接删除
rm -rf /usr/local/nginx/proxy_temp
或重新创建
chown -R www:www /usr/local/nginx/proxy_temp
引用资料
https://blog.youkuaiyun.com/chenthe1/article/details/81475796
https://blog.youkuaiyun.com/yybk426/article/details/94677271