rails 应用程序上的静态 PDF 文件在部署时未显示在网站上

Static PDF file on rails app not showing on website upon deploying

我已将这一行 <p><%= link_to 'Download My Resume', "resume.pdf", { :class=>"btn btn-default btn-lg" } %></p> 添加到我的 html.erb,link 在我的本地服务器上运行完美,但是当我将它部署到我的 aws 服务器时,网页无法访问打开。

日志中的错误消息:

ActionController::RoutingError (No route matches [GET] "/resume.pdf"):

我正在使用 Rails 5.1.6。我已经设置 config.public_file_server.enabled = true 我对发生的事情感到很困惑,希望得到一些帮助。我不想使用任何 pdf gem.

谢谢!

如果您只有 puma 作为服务器,请务必设置

config.public_file_server.enabled = true

在您的 production.rb 文件中。

但我建议使用 nginx 来处理此类文件。

我做了一个简单的测试,在生产模式下启动服务器,当我尝试转到 public 文件时遇到的错误是 secret_key_base 没有为生产环境设置。我在 environments/production.rb 上为此添加了一个值,它起作用了

config.secret_key_base = ENV["SECRET_KEY_BASE"]

当然,SECRET_KEY_BASE 需要有一个值。