是否可以动态设置 nginx 上传模式的 upload_store 值?

是否可以动态设置 nginx 上传模式的 upload_store 值?

我的服务器中有很多硬盘,我想上传文件到这些硬盘上。由于将文件上传到一个驱动器然后再移动到另一个驱动器的开销很大,所以我想直接将文件上传到应该存储它的驱动器上的临时文件夹中。

location /upload/(.*)$ {
    upload_store /home/hoster-node/data/$1/tmp/;

我尝试了类似的事情,想将文件发布到/upload/sda2或类似的地方,然后将临时文件存储在那里。

然而,当我尝试启动 nginx 时出现了这样的失败:

Restarting nginx: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] mkdir() "/home/hoster-node/data/$1/tmp/" failed (2: No such file or directory)
nginx: configuration file /etc/nginx/nginx.conf test failed

当然,如果我可以继续创建 24 个不同的位置指令以及所有其他内容,每个驱动器一个......

但我计划在一个大型系统中这样做,并且我想通过文件系统 uuid 来组织驱动器,所以这真的不切实际。这只是最后的手段。仍然比每次都将文件从系统驱动器移动到存储驱动器要好...

欢迎任何意见!

相关内容