我正在运行一个rails站点,它有一个capistrano部署过程。我了解一些关于部署管道和静态文件如何直接从Nginx服务。然而,这是我的理解,静态图像文件链接应该得到更新,以反映新的指纹图像文件名。
例如,在部署之后,我的文件logo_white被放置在公共/assets文件夹中,新的文件名变成:logo_white-204b61bda69f4aae0c9bb35ca909cdc2.png
然而,在我的application.css.scss文件中,行:
image-url("/assets/logo_white.png");
变成
url(/assets/logo_white.png)
不对。如何指示sass编译器使用新的指纹图像名称?
当您在SASS样式表中使用image-url
helper方法时,您不希望包含路径的/assets/部分。只要图片名称就足够了。
image-url("logo_white.png");
另外,即使您的资产已经编译,也要确保您的应用程序实际上是在production
环境中运行的。