我在Cloud Foundry上有一个Spring Boot应用程序,并想停用HTTP-压缩在以下HTTP标头中使用的代码:Accept-Encoding:gzip,deflate。我想防止突破攻击。
manifest.yml中是否有一个条目,可以用来禁用此压缩功能?
您的应用程序没有manifest.yml
属性(至少对于cf cli的manifest.yml
没有属性)。记住manifest.yml
是控制(或自动化)cf cli的工具,以及它将如何将您的应用程序推送到Cloud Foundry的工具。尽管您可以部署任何类型的应用程序,它都是通用的。最好的方法是将cli信息传递给您的应用程序。您的应用程序必须一直在寻找该信息,以便更改任何行为。
幸运的是,Spring Boot可以从许多地方consume external configuration property settings。可以通过manifest.yml
设置环境变量和系统属性中的两个。加Spring Boot offers properties to control the compression it uses。
如果要禁用压缩,只需将server.compression.enabled
设置为false
。
总而言之,您可以通过添加env:
块并定义适当的env变量,通过manifest.yml来配置此属性。>
Ex:
... env: SPRING_COMPRESSION_ENABLED: false ...
或者,您可以设置系统属性:
Ex:
... env: JAVA_OPTS: '-Dspring.compression.enabled=false' ...
这将关闭压缩,如果您查看doc参考,Spring Boot的其他属性可用于更精细地调整压缩。您可以按照上述方法来应用这些属性或任何其他Spring Boot配置属性。