私が JS ファイルを要求しているのに、Rails が HTML ファイルを提供しているという奇妙な問題です。そして、それは私のステージング サーバー (Heroku) にのみあり、ローカル マシンにはありません。
私はスクリプトを介して他のページに含める必要がある動的なJavascriptファイルを持っています:
<script type="text/javascript" src="http://example.com/embed.js></script>
その埋め込みは、HTML も処理するコントローラーとアクションにマップされます。関連するルートは次のようになります。
match "/embed(.:format)" => "articles#embed", as: "embed"
そして、コントローラーのアクションはかなり標準的です。
def embed
  respond_to do |format|
    format.html do
      #it renders some HTML
    end
    format.js #no block is given
  end
end
そして、app/views/articles の下に 2 つのビューがあります
- 埋め込み.html.haml
 - 埋め込み.js.コーヒー
 
私のローカル マシンでは、localhost:3000/embed.js を要求すると機能します。Javascript を問題なくレンダリングします。ただし、ステージング サーバーでは、ログに次のように表示されます。
Started GET "/embed.js" for 124.168.219.36 at 2012-11-04 00:23:01 +0000
Processing by ArticlesController#embed as JS
  Rendered articles/embed.html.haml (1.5ms)
Completed 500 Internal Server Error in 2ms
内部サーバー エラーは問題ではありません。問題は、リクエストを JS として認識しているにもかかわらず、HTML テンプレートをステージングでのみレンダリングすることを決定していることです。
どうしたの?