KMLファイルをcakePHPで作る

controllerにactionを追加し、

$this->render('action','ajax');

として専用レイアウト(中身空っぽ)を使うよう定義。あとはaction.ctp内でkmlファイルを吐くように設定してみたのだが、どうもうまくいかない。URLをブラウザで直接叩くとKMLファイルが表示されるのだが、googleMapsAPIのKMLLayerで呼び出してもマップに反応なし。これは一体。。。
もしかして拡張子がkmlじゃないと読んでくれないとか?それとも文字コードとかの微妙な差で正しいkmlとして認識してくれていないんだろうか。kmlそのものにエラーがある可能性もあるので、一旦ファイルに書き出してそれをgoogleマップ等で表示させてみるか。