0

Heroku で Rails アプリケーションをホストしています。スラグのサイズを小さくするために、jammit-s3 gem を使用してすべてのパブリック フォルダー ファイルを Amazon S3 に移動しました。すべてが完璧に機能しました。私のアプリケーションは、s3 から画像、js & css ファイルにアクセスして表示できますが、1 つ問題があります。

アプリケーションの画像ギャラリーに Adob​​e Edge (アニメーション用の新しい HTML5 ツール) を使用しています。Adobe Edge は、いくつかの javascript および css ファイルを自動的に作成します。1 つの JavaScript ファイル (public/javascripts/x.js) の一部は次のとおりです。

content: {
  dom: [
    {
        id:'Image1',

        type:'image',
        rect:[0,0,600,400],
        fill:['rgba(0,0,0,0)','../images/schimg1.png'],
    },

ご覧のとおり、パラメーターとして schimg1.png (public/images/) を使用しています。私のファイルを S3 に移動する前に、javascript は画像にアクセスし、1 つ上のフォルダーに移動して画像にアクセスすることで画像を表示できました。しかし、S3 に移行した後、これは機能しなくなりました。Heroku で public フォルダーをホストしたところ、問題なく動作しました。

どうすればこれを修正できますか?JavaScript は自動的に生成されるため、JavaScript に大きな変更を加える必要のない解決策をいただければ幸いです。

4

1 に答える 1

0

「../images/schimg1.png」は相対パスで、画像が Heroku スラッグにあり、heroku アプリ サーバーの適切な場所にある場合に機能します。

イメージが S3 にある場合は、次のように変更する必要があります。

「http://myamazons3.account.subdomain/pathtoimage/schimg1.png」

于 2011-08-20T21:25:27.497 に答える