2012-01-12 33 views
5

Đôi khi, ứng dụng đường ray của tôi đưa ra một lỗi (không có tập tin để tải - rack) ngay cả khi giá được cài đặt.không có tập tin như vậy để tải - rack

[Gemfile] đá quý 'giá', '1.2.1'

Nếu tôi làm mới trang, nó tải tốt. Vì vậy, nó không phải là vấn đề đá quý. Điều gì có thể gây ra lỗi?

Cảm ơn.

Sam

Trả lời

4

Tôi nghĩ nếu bạn bắt đầu trang web cục bộ, điều này sẽ không xảy ra. Vậy bạn đã sử dụng dịch vụ nào? Tôi đã gặp phải loại lỗi này trên DreamHost.

Đối với DreamHost, vấn đề là họ sử dụng phiên bản khác nhau (cũ hơn) của Rack, không tương thích với phiên bản mới nhất của Rails. Hãy thử chỉ định phiên bản Rack trong Gemfile của bạn (và trong hầu hết các trường hợp, bạn cũng phải hạ cấp Rails). Nó có thể giúp.

Lý do khác là bạn sử dụng RVM trên máy cục bộ của mình, nhưng đối với máy chủ, ví dụ: Hành khách + Nginx/Apache, RVM có thể không hoạt động tốt (thực tế, tôi luôn gặp lỗi khi sử dụng Hành khách + RVM). Chỉ định thư mục Gem của bạn có thể hữu ích.

+1

Bạn rất chính xác. Tôi sử dụng DreamHost VPS. Môi trường dev của tôi là RVM. Một điều kỳ lạ nữa là ngay cả khi tôi cài đặt gói 'ứng dụng đường ray của tôi cho tôi rằng "không có tệp nào để tải - rack". Tôi phải làm 'gem install rack -v 1.2.1' bằng tay. Nó có thể liên quan đến 'gói cài đặt - công việc' của tôi. Tôi không chắc chắn, mặc dù. –

+1

Tôi không sử dụng Dreamhost VPS, nhưng máy chủ chia sẻ DreamHost. Tôi nghĩ rằng VPS sẽ tốt hơn nhiều so với máy chủ chia sẻ. Đối với máy chủ chia sẻ, những gì tôi đã làm là ading những dòng để config.ru: ENV ['GEM_HOME'] = "# {ENV ['HOME']} /. Đá quý" ENV ['GEM_PATH'] = "# {ENV [ 'GEM_HOME']}:/usr/lib/ruby ​​/ gems/1.8 " yêu cầu 'rubygems' Gem.clear_paths Bạn có thể thử. Nó chỉ định đường dẫn Gem. – Davidsun

+0

Có. Điều đó đã khắc phục được vấn đề. Cảm ơn. –

Các vấn đề liên quan