ダウンロードカウンタのCGIを作ろうとしています。

ブラウザにファイルの内容を送ろうと思うのですが,どうすれば良いでしょうか?
以下だとファイルが壊れてしまいます.

open(FILE,"$FileName");
binmode(FILE);
print <FILE>; ←while(<FILE>){print $_ }でもだめ.
close(FILE);

送りたいファイルは40KB程度ですが,数MB程度のファイルも対応できるとうれしいです.
お知恵をお貸しくださいm(_ _)m