Apache 将上传的文件放在 /tmp 中。我可以将其更改为其他目录吗?

Apache 将上传的文件放在 /tmp 中。我可以将其更改为其他目录吗?

是否有配置可以更改 apache web 服务器临时放置上传文件的目录?我可以访问 httpd/conf.d

我在一台 /tmp 大小受到严格限制的机器上,并且要求允许上传大于 /tmp 上可用空间的文件。

环境:fedora 18、apache web server 2.4.6-2、passenger 和 ruby​​ on rails。

编辑:办公室里有人讨论说,临时文件上传的位置是由 Passenger(因为这是一个 Ruby on Rails 应用程序)而不是 Apache 决定的。我假设是 Apache,但如果我错了,请纠正我。

答案1

临时文件位置似乎由您选择的脚本程序设置。例如,在 PHP 中,临时上传位置由指令设置upload_temp_dir

upload_temp_dir = /somewhere/else

就 Ruby on Rails 而言,我发现这个 ServerFault 问题将其描述为对 Rails 初始化对象的“tmpdir”属性的改变。

class Dir
  def self.tmpdir
    "/your_directory/"
  end
end

为了重复在另一个主题中回答该问题的用户的观点,请确保您指定的文件夹可由 Apache 用户写入。

答案2

仅供参考,php.ini 文件显示:

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
;upload_tmp_dir =

因此是 'tmp' vs 'temp'。这至少对我有用。

相关内容