Một đường ray ứng dụng có thể chạy trong sản xuất gọi rails server -e production
, mặc dù 99% thời gian bạn sẽ được phục vụ trên một cái gì đó giống như hành khách hoặc mỏng thay vì của WEBrick, có nghĩa là có một lệnh khác để khởi động máy chủ. (thin start -e production
chẳng hạn)
Đây là một câu hỏi phức tạp, nhưng nơi tốt nhất để bắt đầu tìm hiểu về sự khác biệt sẽ là xem các tệp environment.rb
cụ thể. Khi đường ray khởi động, nó bắt đầu với tệp môi trường khớp với môi trường được gọi, nghĩa là nếu bạn bắt đầu nó phát triển, nó bắt đầu bằng cách tải tệp development.rb
của bạn hoặc nếu bạn đang sản xuất, nó sẽ tải tệp production.rb
. Sự khác biệt trong môi trường chủ yếu là kết quả của những khác biệt này trong các tệp cấu hình môi trường khác nhau.
Về cơ bản nếu ứng dụng Rails 3.1 ở chế độ sản xuất, thì theo mặc định nó sẽ không biên dịch nội dung khi đang di chuyển và rất nhiều bộ nhớ đệm sẽ không xảy ra trong quá trình phát triển. Ngoài ra, khi bạn nhận được thông báo lỗi, chúng sẽ được ghi lại nhưng không được hiển thị cho người dùng, thay vào đó, trang lỗi tĩnh từ thư mục công cộng của bạn sẽ được sử dụng.
Để có được cái nhìn sâu sắc hơn vào điều này, tôi sẽ khuyên bạn nên đọc các đường ray có liên quan dẫn:
Rails Khởi Hướng dẫn: http://guides.rubyonrails.org/initialization.html
Rails Fiewall: http://guides.rubyonrails.org/configuring.html
Có thể trùng lặp: http: // stackoverflow.com/questions/1949229/change-a-rails-app-to-production –
@ Đen, với tôi, điều này không giống như một bản sao của câu hỏi bạn đã liên kết. – Andrew
Bạn cần thêm tham số sản xuất 'máy chủ đường ray -e production ' – abhinav