Ruby 关于 Rails 应用程序本地目录资源使用情况

Ruby on Rails app local directory usage for resourcing

我想使用存储在我的服务器下的本地文件(不在 Rails' public 目录或项目目录中)就像 public 文件夹一样。

为了更简短的解释,我有一个 /home/server/img 文件夹,而我的 Rails 项目的根目录有所不同。我希望能够在我的 Rails 应用程序中使用这些名为“img”的文件夹内容,就像资源文件一样。

举个例子;

<img src="/home/server/img">

我正在使用 nginx 为我的应用程序提供服务。而img文件夹就是挂载的samba共享目录。 谢谢

我找到了我之前提出的问题的解决方案。我一直在寻找的是,我想在我的 Rails 应用程序上使用我的网络服务器下的本地文件。这背后的主要思想是我不想用用户内容填充我的 Web 服务器的存储空间 space。 因此,我基本上使用以下 script 在我的服务器下创建了一个挂载共享,然后使用 Rails 的 File.open 方法来访问这个挂载目录的内容。

以下函数从我基于 UNIX 的服务器的任何目录中读取数据,然后使用基本的 HTTP 通信将文件发送到客户端计算机。我将此行放在控制器功能下,并在 config/routes.rb

下提供了一个 get routing
  data_file = '/path/to/file'
  data      = File.open(File.expand_path(data_file), 'r')

  send_data data.read, filename: "imageName.png", type: "image/png", disposition: 'inline',  stream: 'true', buffer_size: '4096'

Here 是解释类似问题答案的另一个来源。