Rails 3.1:将 /images 别名到 /assets 目录

发布于 2024-12-10 19:00:45 字数 143 浏览 1 评论 0原文

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

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

I'm upgrading to rails 3.1 and I need to have the /images directory be an alias to /assets. Is this possible? The reason being I don't want emails that I have sent out to clients which have direct links to files in /images to break.

Is this possible at the web server level? I'm on nginx.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

檐上三寸雪 2024-12-17 19:00:45

你可以在 nginx 中执行此操作,

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

但我认为更大的问题是当你运行时

rake assets:precompile

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

You can do this in nginx

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

Though I think the bigger problem will be when you run

rake assets:precompile

It will add a md5hash string to your images. This hash string is added to force browsers to download changed images, so it doesn't use the browser cache. Since the names of the images will be different. It might make more sense to host the old images in a static directory with nginx.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文