Ruby on rails Ruby on Rails应用程序本地目录资源使用

Ruby on rails Ruby on Rails应用程序本地目录资源使用,ruby-on-rails,nginx,webserver,assets,samba,Ruby On Rails,Nginx,Webserver,Assets,Samba,我希望使用存储在服务器下的本地文件(不在Rails的公共目录或项目目录中),就像使用公用文件夹一样 为了更简单的解释,我有一个/home/server/img文件夹,我的Rails项目的根目录是不同的。我希望能够在Rails应用程序中使用这些名为“img”的文件夹内容,就像使用资源文件一样 例如, <img src="/home/server/img"> 我正在使用nginx为我的应用程序提供服务。img文件夹被装载到samba共享目录中。 谢谢。我找到了我

我希望使用存储在服务器下的本地文件(不在Rails的公共目录或项目目录中),就像使用公用文件夹一样

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

例如,

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

我正在使用nginx为我的应用程序提供服务。img文件夹被装载到samba共享目录中。
谢谢。

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

下面的函数从基于UNIX的服务器的任意目录读取数据,然后通过基本HTTP通信将文件发送到客户机。我将这些行放在controller函数下,并在config/routes.rb下给出了一个get路由

  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'
另一个来源解释了类似问题的答案