画像やPDFなどのファイルについても、セッション情報からのユーザ認証を行いたいと考えています。
phpで以前試した際には認証処理を行った後、対象となるファイルをincludeすれば実現できていました。
ColdFusionでも同じように考えていましたが、ColdFusionの場合だとバイナリが壊れてしまうようです。
例:<cfinclude template="test.pdf">とすると、壊れたバイナリが表示
ColdFusion側で余分な改行やスペースが出力されているのかと思い調べていたところ、どうもApache+ColdFusion場合はhttpのメッセージボディ出力時に、ColdFusion側から情報が付加されているようです。
例えば、単純にtestと返すcfmページがあった場合、パケットキャプチャで中を見ると
4
test
0
のように前後に数字が付与されていました。
※先頭の数字はどうもサイズを表しているようです。
ためしたパターンは
○OS:Linux Apache2 ColdFusion7
○OS:Windows Apache2 ColdFusion9
では、いずれも上記のように情報が付加されています。
ただ、他のサイトを見ているとどうもIISの場合では上記の情報が付加されていないようです。
※当方にIISでの環境がないため、未検証
これがバイナリが壊れる原因とは断言出来ませんが、なにか回避方法をご存知の方がいらっしゃれば、ご教授ください。