我部署了一个Elastic Beanstalk应用程序,它使用的是nginx而不是Apache。我真的很想让浏览器图像缓存工作,但我在网上找不到任何关于用nginx设置缓存头的信息。有了Apache,这就容易多了。有指针吗?
将其分解为两个问题。
- 为
nginx
扩展AWS弹性Beanstalk平台配置 - 配置
nginx
1.为nginx
扩展AWS弹性Beanstalk平台配置
在AWS Elastic Beanstalk的应用程序部署中,您可以包含一个包含配置文件的.ebextensions
目录,包括与nginx
相关的.conf
文件。
对于您的场景,这可能看起来像:
~/my-applicaiton/
|-- .ebextensions
| `-- nginx
| `-- conf.d
| `-- image_caching.conf
您需要将.zip
与部署捆绑包一起使用,以确保.ebextensions
目录位于.zip
的根目录。
资源:
- https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html
- https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/java-se-nginx.html
2.配置nginx
一旦您介绍了现有nginx
配置的.ebextensions
扩展,您将关注如何配置nginx
以添加必要的Header,用于浏览器缓存以应用于资产。
另一个答案可能会让您对如何配置nginx
的每个资产的位置和到期日有更多的了解。
https://serverfault.com/a/334871