पर तैनात करते समय मेरी वेबसाइट काम करने के लिए प्रयुक्त होती थी और हेरोोक ने संपत्तियों और सबकुछ का प्रीकंपल किया था। अब, मालूम होता है कहीं से, मैं तैनाती पर इस संदेश को प्राप्त करने के लिए शुरू कर दिया:"रेक निरस्त! स्टैक स्तर बहुत गहरा" हैरोकू
Preparing app for Rails asset pipeline
Running: rake assets:precompile
mkdir -p /tmp/build_31cexir1p9pwn/public/assets
mkdir -p /tmp/build_31cexir1p9pwn/public/assets/icons
mkdir -p /tmp/build_31cexir1p9pwn/public/assets/icons
mkdir -p /tmp/build_31cexir1p9pwn/public/assets
mkdir -p /tmp/build_31cexir1p9pwn/public/assets
(in /tmp/build_31cexir1p9pwn)
mkdir -p /tmp/build_31cexir1p9pwn/public/assets
mkdir -p /tmp/build_31cexir1p9pwn/public/assets
rake aborted!
stack level too deep
(in /tmp/build_31cexir1p9pwn/app/assets/stylesheets/theme.css.scss)
(See full trace by running task with --trace)
Precompiling assets failed, enabling runtime asset compilation
Injecting rails31_enable_runtime_asset_compilation
यह मेरी सीएसएस फ़ाइल precompile नहीं कर सकते।
मैं देवदार ढेर उपयोग कर रहा हूँ और यह मेरा gemfile है: है
gem 'rails', '3.1.0'
gem 'rake', '0.8.7'
gem 'devise'
group :production do
gem 'pg'
gem 'thin'
end
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
end
यहाँ यहाँ मेरी application.rb फ़ाइल
# Enable the asset pipeline
config.assets.enabled = true
# Version of your assets, change this if you want to expire all your assets.
config.assets.version = '1.0'
है और मेरे production.rb फ़ाइल
# Code is not reloaded between requests
config.cache_classes = true
# Full error reports are disabled and caching is turned on
config.consider_all_requests_local = false
config.action_controller.perform_caching = true
# Enable Rails's static asset server (Apache or nginx will not need this)
config.serve_static_assets = true
# Set expire header of 30 days for static files
config.static_cache_control = "public, max-age=2592000"
# Allow JavaScript and CSS compression
config.assets.compress = true
# Compress JavaScript by removing whitespace, shortening variable names, ...
config.assets.js_compressor = :uglifier
# Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true
अब छवियों के मेरे सभी लिंक टूटा हुआ है (मैं अपनी सीएसएस फ़ाइल में छवि-यूआरएल() का उपयोग कर रहा हूं)। समस्या क्या हो सकती है और मैं इसे कैसे ठीक कर सकता हूं?
क्या आप इस फ़ाइल को सूचीबद्ध करने में सक्षम होंगे, theme.css.scss। ऐसा लगता है कि आपकी संपत्ति पाइपलाइन –
"स्टैक स्तर बहुत गहरी" त्रुटि है, असल में, स्मृति से बाहर चल रहे एप्लिकेशन का एक मामला है। यह अक्सर उन कार्यक्रमों का परिणाम होता है जो बहुत सारे रिकर्सन (फ़ंक्शन जो स्वयं को कॉल करते हैं) का उपयोग करते हैं, और पार्सर्स (सीएसएस से सीएसएस, जेएस से कॉफीस्क्रिप्ट, ईआरबी से एचटीएमएल) जैसी चीजें आम तौर पर रिकर्सन का उपयोग करती हैं। काम के आसपास के रूप में, तैनाती से पहले संपत्तियों को पूर्व-संकलित करने का प्रयास करें - आपके स्थानीय मशीन पर हेरोोकू इंस्टेंस की तुलना में अधिक स्मृति हो सकती है। –
यह एक बहुत ही गंभीर बग है। क्या आपने गीथब पर इसकी रिपोर्ट की थी? – jcollum