【发布时间】:2021-09-18 20:48:00
【问题描述】:
我通过 nginx 上传大尺寸(5-100GB)的单个文件。 Nginx 将其临时保存在路径中。我需要将临时路径更改为另一个磁盘的路径。我的后端应用程序将文件移动到磁盘中。但是复制粘贴太慢了,出现超时错误。
磁盘安装在 /etc/fstab 上
/dev/disk/by-uuid/24c495a2-1fb1-46a7-8ae1-d425f5b67d4a /media/cesium auto nosuid,nodev,nofail,x-gvfs-show 0 0
这是我的配置文件
server {
listen 14000;
server_name _;
client_max_body_size 100G;
client_body_temp_path /media/cesium/nginx_tmp;
location / {
proxy_pass http://localhost:13001;
}
location /api/ {
proxy_pass http://localhost:13002/api/;
}
}
这是 nginx 错误日志文件 /var/log/nginx/error.log 上的内容
2021/07/08 12:30:00 [crit] 11595#11595: *159 open() "/media/cesium/nginx_tmp/0000000002" failed (13: Permission denied), client: 192.168.20.180, server: _, request: "POST /api/v1/terrain/5/uploadfile HTTP/1.0", host: "192.168.20.201:14000", referrer: ...
这是我试图解决的问题然后我失败了。
- 我将 nginx.service 用户更改为 root。
- 我把整个磁盘的权限改成了777
- 我的问题看起来与Linux (Centos) and Nginx permissions on another disk 重复,但不是。我试图在 ubuntu 上安装 selinux。我无法再次使用 selinux 启动。我在 ubuntu 上禁用了 selinux。
这和apparmor有关吗?
【问题讨论】:
标签: ubuntu nginx permission-denied selinux apparmor