2013-05-17 39 views
55

Sau khi sử dụng jekyll serve trên một máy, máy chủ WEBrick được thiết lập và có thể truy cập trang web từ localhost:4000 trên máy tính cụ thể này.Kết nối với máy chủ Jekyll được xây dựng cục bộ bằng thiết bị di động trong mạng LAN

Tuy nhiên, tôi tự hỏi cách truy cập máy chủ web này từ các máy khác trong mạng LAN, đặc biệt là đối với thiết bị di động? Tôi đang cố gắng kiểm tra trang web jekyll trên thiết bị di động trước khi đẩy mã vào Github.

Trả lời

123

Hãy thử jekyll serve --host=0.0.0.0 khi bạn gọi Jekyll trên dòng lệnh.

Điều đó sẽ làm cho máy chủ HTTP của Jekyll liên kết với tất cả các IP có sẵn, thay vì chỉ đến localhost.

Bạn cũng có thể thêm số này vào _config.yml với host: 0.0.0.0. GitHub sẽ đơn giản bỏ qua điều này khi bạn đẩy, vì vậy nó an toàn để sử dụng nếu bạn không nhớ công việc của bạn có thể truy cập công khai trên mạng của bạn.


Without --host=0.0.0.0 Jekyll sẽ đưa ra một cái gì đó như thế này khi bạn khởi động:

$ jekyll serve 
[...] 
Server address: http://127.0.0.1:4000/ 
Server running... press ctrl-c to stop. 

Nhưng với --host=0.0.0.0 (hoặc host: 0.0.0.0 trong _config.yml), bạn sẽ nhận thấy rằng nó là lắng nghe trên tất cả các giao diện (đại diện bởi 0.0.0.0) thay vì chỉ nghe trên giao diện loopback (được đại diện bởi 127.0.0.1)

$ jekyll serve --host=0.0.0.0 
[...] 
Server address: http://0.0.0.0:4000/ 
Server running... press ctrl-c to stop. 
+2

Nó làm việc cho tôi như là 'jekyll serve --host = 0.0.0.0' – skjoshi

+3

Phần đầu tiên làm việc như được chỉ ra (jekyll 2.5.3), không kiểm tra phần thứ hai (về mục nhập trong tệp cấu hình). – j4v1

+4

Để truy cập trang web của bạn, trên máy tính/thiết bị di động khác, hãy nhập ip của máy tính đang lưu trữ. (Có thể có gì đó giống như 192.168.1.5:4000). Và đây là một cách để tìm ip của bạn: http://stackoverflow.com/a/13322549/1400991 –

-6

Giả sử thiết bị di động của bạn được kết nối với cùng một mạng LAN như máy phát triển của bạn.

  1. Xác nhận địa chỉ IP LAN của máy phát triển của bạn. Thông thường một cái gì đó như: 192.168.0.XXX. Trong đó .XXX là 3 chữ số cuối cùng duy nhất trong LAN IP của máy dev của bạn.

  2. Point trình duyệt web của điện thoại di động của bạn để: http://192.168.0.XXX:4000

Đó là cách tôi làm điều đó trên máy tính xách tay của tôi và iPhone cho Jekyll dev.

+2

Tôi có cần chỉ định '--host = 0.0.0.0' khi khởi động máy chủ không? (Tôi không thể kiểm tra nó vào lúc này.) –

+0

@ user1177636, không, không cần thiết, chỉ cần 'jekyll serve'. Điều đó sẽ khởi chạy máy chủ WebBrick sẽ được sử dụng cho bất kỳ thiết bị hoặc máy cục bộ nào. BTW, tôi giả sử bạn đang chạy Jekyll> = 1.0.0, các lệnh khác nhau đối với các phiên bản cũ hơn. Chạy 'jekyll --server' nếu sử dụng <= 0.12.1. –

+0

Bằng cách nào đó nó không làm việc cho tôi mà không chỉ rõ --host = 0.0.0.0. Các cài đặt tường lửa bạn đã sử dụng để sửa chữa nó là gì? – skjoshi

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