2017-06-09 1 views
0

Emberサイトを構築していて、実稼働環境に読み込まれていないイメージに問題があります。Ember CSS - 生産現場にロードされていないイメージ

私は最新バージョンを使用しています。 私は\ SASSモジュールは喜んapp.css

にその変換され

html { 
    height: 100%; 
    overflow-y: hidden; 
} 

body { 
    background-image: url('/assets/images/StockSnap_8SAODL7HZ4.jpg'); 
    background-position: 50%; 
    background-repeat: no-repeat; 
    background-size: cover; 
    height: 100%; 
} 

をapp.scss SASSモジュールをインストールして アプリの\スタイルに非常に基本的なスタイルシートを持ってきました私は基本的なemberを提供するこれはうまく動作します。 emberデプロイメントプロダクションを実行すると、がAWS S3にアクテイブになります。

予想通り、私のイメージファイルが 資産/画像/ StockSnap_8SAODL7HZ4-4279bf0a502da08d183b81b67d479b40.jpg

なるように私の資産のすべては、指紋を取得私のapp.cssが更新され、 を探し続けてません。しかし、 アセット/ Images/StockSnap_8SAODL7HZ4.jpg

私は何かが分かっていますが、わからないことはありますか?

+1

画像ディレクトリはassets/imagesまたはassets/Imagesですか?後の例で大文字にしました(これは、一般的な実動Linuxサーバーのように、大文字小文字を区別するファイルシステムに問題を引き起こします)。 –

+1

'ember s --prod'を実行することで、これをローカルでテストすることをお勧めします。それが['broccoli-asset-rev'](https://github.com/rickharrison/broccoli-asset-rev)パッケージの問題であれば、ローカルでも問題になるはずです。 'broccoli-asset-rev'がファイル名の '8SAODL7HZ4'で混乱している可能性があります(既にハッシュしていると思って無視しているかもしれません)。 –

+0

ありがとう私は画像上でcapitilized私を変更しました。 ember s --prodでテストすると同じ結果が得られます.cssファイルは指紋リソースで更新されません。私もファイルの名前を変更しようとしました。 –

答えて

1

貼り付けたURLの例で判断すると、大文字と小文字の区別が原因で問題が発生する可能性があります。

URLが本番稼働中に破損していてもローカルで正常に動作している場合は、まずURLと実際のファイルパスの大文字と小文字が一致していないかどうかを確認します。これは、プロダクションサーバがファイルシステムである(通常はLinuxサーバを使用している場合)ですが、通常はという機密を持っていることが多いため、問題が発生する可能性があります。例えば

あなたは、このサイトの構造がある場合、:

test-site 
├── imgs 
│   └── test-image.png 
└── index.html 

をこれがケース小文字を区別しないファイルシステム上で動作します:大文字と小文字を区別

<img src="IMGS/test-image.png"> 

しかし、それは意志404ファイルシステム。

+0

マイケルに感謝します。私が上でそれを言及しなかったのでちょうど注意する。私はWindowsマシン上にあります。もちろん、大文字と小文字は区別されません。また、ember s --prodの結果もcssファイルで更新されていないように見えます。最初のインスタンス。 –

関連する問題