2017-06-09 25 views
0

我正在建立一個灰燼網站,我在生產中沒有加載我的圖像時出現問題。灰燼CSS - 圖像沒有在生產中加載

我在使用最新版本。 我已經安裝了SASS模塊,並在 應用程序\風格\一個非常基本的樣式表app.scss

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%; 
} 

的SASS模塊高興地轉換到這app.css

當我做了一個基本的燼服務,這工作正常。 但是,做了一個餘燼部署生產 - 激活 AWS S3的事情出錯。

我的資產都得到如預期按手印,所以我的圖像文件將成爲 資產/圖像/ StockSnap_8SAODL7HZ4-4279bf0a502da08d183b81b67d479b40.jpg

但是我app.css沒有得到更新,並繼續尋找 assets/Images/StockSnap_8SAODL7HZ4.jpg

我想我錯過了一些明顯的東西,但不知道是什麼!

+1

您的圖片目錄是「assets/images」還是「assets/Images」?你在後面的例子中會大寫(這會導致大小寫敏感的文件系統上的問題,如常見的生產Linux服務器)。 –

+1

我會建議測試這個本地以及'燼s --prod'。如果這是['broccoli-asset-rev'](https://github.com/rickharrison/broccoli-asset-rev)包的問題,​​那麼它在本地也應該是個問題。 另一種可能是'broccoli-asset-rev'被文件名中的'8SAODL7HZ4'弄糊塗(也許它認爲它已經被散列並忽略它),請嘗試重命名它。 –

+0

謝謝我改變了圖像上的capitilized I。用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機器上,這當然是不區分大小寫的,並且它似乎即使然後與燼s - 產生的結果沒有在css文件中更新 - 所以它似乎是燼本身就是這樣做的第一個例子。 –