ColdFusion - how to set Content-Length header

假如想象 提交于 2019-12-07 05:45:15

问题


Has anyone successfully added a Content-Length header to regular ColdFusion (I'm using CF9) pages? I'm setting up a new server behind a Cisco load balancer with compression - the box refuses to compress anything without this header, but CF doesn't pass it by default.

<cfheader name="Content-Length" value="something"> will set the header, but finding the right value is a problem.

Any pointers would be much appreciated.


回答1:


I believe I've solved it:

<cfheader name="Content-Length" value="#getPageContext().getCFOutput().getBuffer().size()#">

I stuck that in onRequestEnd() and the Cisco box is happily compressing away.

Thanks for the input folks.




回答2:


I don't love this idea, but could you make some sort of wrapper with cfsavecontent and take the length of that?

Something like:

<cfsetting enablecfoutputonly="yes">
<cfsavecontent variable="testVar">
     <cfinclude template="myPage.cfm">
</cfsavecontent>
<cfheader name="Content-Length" value="#len(testVar)#">
<cfoutput>#testVar#</cfoutput>

I'm not sure if the count would be off due to white space issues.



来源:https://stackoverflow.com/questions/3928431/coldfusion-how-to-set-content-length-header

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!