ruby-on-rails - rails 3.1 : alias/images to/assets directory

标签 ruby-on-rails nginx ruby-on-rails-3.1 asset-pipeline

我正在升级到 Rails 3.1,我需要让/images 目录成为/assets 的别名。这可能吗?原因是我不希望我发送给客户的电子邮件被破坏,这些客户直接链接到/images 中的文件。

这在 Web 服务器级别可能吗?我在 nginx 上。

最佳答案

你可以在 nginx 中做到这一点

location /images {
    alias /usr/share/rails_app/public/assets/images;
}

虽然我认为更大的问题会出现在你运行的时候

rake assets:precompile

它将为您的图像添加一个 md5hash 字符串。添加此哈希字符串是为了强制浏览器下载已更改的图像,因此它不使用浏览器缓存。由于图像的名称会有所不同。使用 nginx 将旧图像托管在静态目录中可能更有意义。

关于ruby-on-rails - rails 3.1 : alias/images to/assets directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7814967/

相关文章:

ruby-on-rails - redis local SocketError : getaddrinfo: nodename nor servname provided, or not known

ruby-on-rails - 使用 Apache 2、Rails 3.2 和 Phusion Passenger 配置子 uri 时遇到问题

angular - 将Nginx配置为按 Angular 服务器资源文件

tomcat - 400 对 nginx 代理到 tomcat 的错误请求,但不是对静态内容的请求

ruby-on-rails-3.1 - Heroku 上的 HTTP 流式传输(上传大量数据)

ruby-on-rails - 为什么= javascript_include_tag :defaults not work in a haml layout in Rails 3. 1

sql - 是否可以在 Rails 迁移中使用外部 SQL 文件?

ruby-on-rails - 在 HAML 中使用 ruby​​ 变量作为类名

docker - 容器运行后如何将容器目录挂载到另一个目录中?

ruby-on-rails-3.1 - 为什么使用相同密码的2个用户的密码哈希不同?