较大的静态资源加载不了,控制台报net::ERR_CONTENT

2019-07-23  本文已影响0人  dbc94a66f502

查看日志发现

2019/07/23 15:14:56 [crit] 48437#0: *2777 open() 
"/usr/local/nginx/proxy_temp/8/02/0000000028" failed (13: Permission 
denied) while reading upstream, client: xxx, server: xxx, request: "GET 
/cocoding/webjars/springfox-swagger-ui/swagger-ui.min.js HTTP/1.1", 
upstream: "http://127.0.0.1:8080/cocoding/webjars/springfox-swagger-
ui/swagger-ui.min.js", host: "xxx", referrer: 
"http://xxx/cocoding/swagger-ui.html"

错误原因是 (13: Permission denied),在请求资源的时候,nginx访问/usr/local/nginx/proxy_temp/8/02/0000000028没有权限,所以请求失败。

那么,为什么nginx要访问proxy_temp文件夹呢,因为proxy_temp是nginx的缓存文件夹,我的css和js文件过大了,所以nginx一般会从缓存里面去拿,而不是每次都去原地址直接加载。

查看/usr/local/nginx/proxy_temp的文件权限,发现该文件夹的所有者是nobody用户。然后我想起安装nginx的时候是以nobody用户运行的,后来我改为了nginx用户运行,即当前nginx的使用者是nginx,所以没有这个文件夹的访问权限。

解决方法:

1.改变文件夹所有者,把文件夹及文件夹下所有文件的所有者改为当前nginx的使用者,chown -R nginx.root./*。

2.重启nginx

上一篇 下一篇

猜你喜欢

热点阅读