Spróbuj, jekyll serve --host=0.0.0.0
gdy wywołasz Jekyll w wierszu poleceń.
To spowoduje, że serwer HTTP Jekyll powiąże się ze wszystkimi dostępnymi adresami IP, a nie tylko z localhost
.
Możesz również dodać to do swojego pliku _config.yml
with host: 0.0.0.0
. GitHub po prostu zignoruje to, gdy naciskasz, więc jest bezpieczny w użyciu, jeśli nie masz nic przeciwko otwartemu dostępowi do swojej pracy w sieci.
Bez --host=0.0.0.0
Jekyll podczas uruchamiania wyświetli się coś takiego:
$ jekyll serve
[...]
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.
Ale z --host=0.0.0.0
(lub host: 0.0.0.0
in _config.yml
) zauważysz, że nasłuchuje na wszystkich interfejsach (reprezentowanych przez 0.0.0.0
), a nie tylko na interfejsie pętli zwrotnej (reprezentowanym przez 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.
Jeśli nadal nie możesz uzyskać dostępu do serwera, może to oznaczać, że firewall go zatrzymuje. Tymczasowo wyłącz zaporę lub dodaj regułę przekierowania portów dla portu 4000.
Gdy Jekyll odpowiednio nasłuchuje na wszystkich interfejsach, możesz uzyskać do niego dostęp z urządzenia mobilnego za pomocą adresu IP sieci LAN (pobranego z czegoś podobnego ifconfig
lub w ipconfig
zależności od systemu operacyjnego).
/sbin/iptables -P INPUT ACCEPT
aby otworzyć zaporę. Opcjonalnie dodaj tę linię do,/etc/rc.local
jeśli chcesz, aby zapora była domyślnie otwarta po wejściu do chroot. Zobacz także oficjalne instrukcje .Zakładając, że Twoje urządzenie mobilne jest podłączone do tej samej sieci LAN, co komputer deweloperski.
Sprawdź adres IP sieci LAN swojego komputera deweloperskiego. Zwykle coś takiego: 192.168.0.XXX. Gdzie .XXX to unikatowe ostatnie 3 cyfry adresu IP LAN twojego urządzenia deweloperskiego.
Skieruj przeglądarkę internetową swojego urządzenia mobilnego na: http://192.168.0.XXX:4000
Tak właśnie robię to na swoim laptopie i iPhonie dla Jekyll dev.
źródło
--host=0.0.0.0
podczas uruchamiania serwera? (Nie mogę tego teraz przetestować.)jekyll serve
. Spowoduje to uruchomienie serwera WebBrick, który będzie dostępny dla dowolnego lokalnego urządzenia lub maszyny. BTW, zakładam, że używasz Jekyll> = 1.0.0, polecenia są różne dla starszych wersji. Uruchom,jekyll --server
jeśli używasz <= 0.12.1.jekyll serve
nie wyszło. Moje urządzenie mobilne nie mogło uzyskać dostępu do serwera, dopóki nie zadzwoniłemjekyll serve --host=0.0.0.0
. Czy ktoś ma na to wytłumaczenie?