2010-05-07 15 views
30

En yeni raylar 3 beta kullanıyorum. Uygulama geliştirme modunda çalışıyor, ancak rails server -e production aracılığıyla üretim modunda sunucuyu başlattığımda, public klasörünün bulunamıyor gibi görünüyor. public klasörde olmalı her şey içinSunucu raylarda ortak klasör bulamıyor 3 üretim ortamı

ActionController::RoutingError (No route matches "/javascripts/jquery.js"): 

Ve benzer mesajlar: Ben gibi hata iletileri alabilirsiniz. Bunu hem melez hem de webrick ile denedim. Herhangi bir yardım için minnettar olurum.

cevap

60

düzenleme yapılandırma/ortamlar/production.rb ve bu hattı ayarı: boynuzlu at

config.serve_static_assets = true

+0

Bu gerçekten bana yardımcı oldu. Ama eğer bunu yanlış olarak ayarlarsanız, HTTP sunucusu (Apache ya da bir şey) bu dosyalara hizmet edecek mi? Apache, ruby ​​çalışma zamanına hangi URL'lerin teslim edileceğini ve hizmet verebileceğini nasıl biliyor? Ben bir roob noob – Zasz

+0

müthiş - Teşekkür ederim! – house9

+1

@Zasz nginx yapılandırmasına bakın [burada] (http://www.talkunafraid.co.uk/2010/09/getting-set-up-with-ruby-and-rails/). İlk önce dosyanın bulunup bulunmadığını bulur ve talebi yalnızca eğer yoksa raylara teslim eder. – ZelluX

1

nginx ve apache otomatik olarak yapacaktır. Bu sunucuları kullanarak dağıtıyorsanız, bunu yanlış olarak değiştirdiğinizden emin olun.

+4

config.serve_static_assets = true – house9

+0

ev9 ile anlaşmak zorunda kaldı. tek boynuzlu at doğru olarak ayarlanması gerekiyor. – HungryCoder

İlgili konular