2013-08-05 37 views
6

Jekyll tạo một trang tĩnh trong một thư mục cụ thể (theo mặc định, _site). Chạy jekyll serve tạo trang web và sau đó thiết lập máy chủ sao cho trang web có thể được xem cục bộ trên cổng được chỉ định (ví dụ: localhost:4000 theo mặc định). Tôi tự hỏi nếu có một cách để kích hoạt hành vi này serve mà không kích hoạt đá quý để biên dịch lại trang web đầu tiên.jekyll phục vụ (cục bộ) mà không cần xây dựng

Ngoài ra, sẽ đủ để sử dụng một số công cụ khác để phục vụ trang web từ cổng cục bộ mà không sử dụng jekyll, nhưng tôi không chắc chắn cách thực hiện điều đó (node.js?). Trong khi tôi có thể mở các tệp tĩnh trực tiếp trong trình duyệt, điều này không tìm thấy tất cả các liên kết url tương đối (để css, v.v.) một cách chính xác, các liên kết mặc định chẳng hạn như /css/default.css đến gốc file://css/default.css thay vào đó, tất nhiên không tồn tại ở đó.

(Điều này sẽ hữu ích, vì Jekyll mất khá nhiều thời gian để xây dựng một trang web lớn và một số plugin tôi sử dụng cần truy cập internet vào nhiều API khác nhau. Sẽ thật tuyệt khi xem trang web ngoại tuyến mà không kích hoạt các trang này) .

+0

Nếu bạn chỉ cần một máy chủ tệp tĩnh, bạn có thể sử dụng ['node-static'] (https://github.com/cloudhead/node-static#command-line-interface). Tuy nhiên, nếu trang web vẫn đang xây dựng, các tệp có thể chưa thực sự khả dụng. –

+0

Hmm .. Cài đặt tốt với 'npm', nhưng khi tôi thử' static' trong thư mục trang web, tôi không nhận được đầu ra console và không hiển thị ở localhost: 8080 ... không chắc chắn mình đã bỏ lỡ ... – cboettig

Trả lời

6
jekyll serve --skip-initial-build 

Điều này sẽ phục vụ trang web, bỏ qua quá trình xây dựng ban đầu. Có thể tìm thấy các tùy chọn cấu hình bổ sung để xây dựng và phục vụ trang web here.

6

Nếu bạn chỉ muốn phục vụ thư mục đã được xây dựng _site, có nhiều cách để nhanh chóng chạy máy chủ web cục bộ. Với ruby ​​bạn chỉ cd vào _site và có thể sử dụng WEBrick như vậy:

ruby -rwebrick -e 'WEBrick::HTTPServer.new(:Port=>4000,:DocumentRoot=>".").start' 

hoặc python của SimpleHTTPServer:

python -mSimpleHTTPServer 4000 

Cả hai thiết lập các cổng đến 4000, nhưng điều đó có thể là bất kỳ số.

+0

Hoàn hảo, cảm ơn! Cả hai đều làm việc như một sự quyến rũ đối với tôi. WEBrick dường như là những gì jekyll đang sử dụng trong nội bộ quá. – cboettig

0

Bạn hoàn toàn có thể bỏ qua hoàn toàn tòa nhà nếu bạn sử dụng nền tảng blog khác, như BlogDown. BlogDown là trình tạo trang web tĩnh không cần phải được biên dịch. Bạn chỉ cần trao đổi ra các tập tin markdown, và bạn tốt để đi. https://github.com/thingdown/blogdown