2013-07-04 23 views
8

Tôi hiểu rằng Octopress được thiết kế để chạy dưới dạng ứng dụng web độc lập.Kết hợp ứng dụng Octopress và Rails 4.0?

Tôi có trang web cá nhân và tôi muốn thêm blog vào đó và vì nhiều lý do tôi muốn sử dụng Octopress cho việc này. Thay vì có hai ứng dụng riêng biệt và repos trong git, tôi muốn tích hợp các ứng dụng này lại với nhau.

Có cách nào đáng tin cậy để tích hợp Octopress vào ứng dụng Rails 4.0 hiện có không?

Liệu đặt cược tốt nhất của tôi là gắn Octopress như một ứng dụng giá bên trong bộ định tuyến Rails, hoặc có cách nào tốt hơn?

+3

Octopress tạo các tệp tĩnh, nó sẽ không đủ để đưa chúng vào thư mục công cộng của ứng dụng Rails của bạn? – Wukerplank

+0

@Wukerplank Octopress thực sự là một ứng dụng 'sinatra/base', vì vậy tôi tin rằng có thể' gắn OctopressApp,: at => '/ blog'' bên trong tệp Rails 'routes.rb'. – professormeowingtons

+0

Không, khi bạn vào thư mục Octopress và chạy 'rake generate', bạn sẽ nhận được một thư mục' public' chứa blog của bạn. Octopress là một trình bao bọc cho Jekyll (http://jekyllrb.com) mà chính nó là một trình tạo trang web tĩnh. Phần Sinatra bạn đang đề cập đến là để xem trước và phát triển. – Wukerplank

Trả lời

1

Tôi nghĩ rằng đặt cược tốt nhất của bạn là có một máy chủ giao diện người dùng như nginx làm proxy ngược và thực hiện chuyển hướng/proxy từ đó.

Vì vậy, bạn sẽ có một cái gì đó nginx.conf dọc theo dòng:

server { 
    listen 80; 
    server_name domain.com; 
    location/{ 
    # ... proxy config stuff to rails ... 
    } 
} 

server { 
    listen 80; 
    server_name blog.mydomain.com; 
    location/{ 
    root /to/octopress/static/folder 
    } 
} 

dụ của tôi là nếu bạn sử dụng một tên miền phụ blog.domain.com. Nhưng rõ ràng nếu bạn có domain.com/blog, nó sẽ vẫn hoạt động, chỉ cần thực hiện một số chỉnh sửa trên tệp nging.conf.

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