Jak zezwolić dowolnemu urządzeniu, np. IPhone'owi, na łączenie się przez sieć WLAN z serwerem localhost mojego komputera Mac?
Na moim Macu mam uruchomiony serwer HTTP Node.js „Hello World” , który obsługuje stronę, którą Safari pomyślnie otwiera pod adresem http://localhost:1337
. I działa ipconfig getifaddr en1
na wyjściach terminala 192.168.1.9
.
Jednak Safari na iPhonie i Macu wyświetla komunikat „Safari nie może połączyć się z serwerem”, gdy próbuje się otworzyć http://192.168.1.9:1337
.
Myślę, że nie powinno to obejmować przekierowania portów, ponieważ chcę, aby serwer HTTP był dostępny tylko prywatnie, a nie publicznie.
Związane z:
Odpowiedzi:
Miałem ten sam problem. Wyłączyłem Wi-Fi na komputerze Mac, a następnie włączyłem je ponownie, co rozwiązało problem. Kliknij Ustawienia> Wyłącz Wi-Fi.
Przetestowałem to, przechodząc do Safari na moim iPhonie i wpisując nazwę hosta lub adres IP. Na przykład:
http://<name>.local
lubhttp://10.0.1.5
źródło
<name>.local
- Nigdy więcej statycznych adresów IP do testowania!Niech twój serwer nasłuchuje
0.0.0.0
zamiastlocalhost
.źródło
Mogłem uzyskać dostęp do mojego iPhone'a tylko za pomocą
http://name.local:1337
. Musisz dodać „.local”. Nazwę komputera można znaleźć w Preferencjach systemowych / udostępnianie / „Nazwa komputera”.źródło
whoami
je w konsoli.Spróbuj włączyć udostępnianie Internetu:
Otwórz Preferencje systemowe -> Udostępnianie. Zaznacz Udostępnianie Internetu, aby je włączyć, pojawi się monit o potwierdzenie działania, wybierz OK. Jeśli Twój iPhone jest podłączony przez USB, iPhone USB jest zaznaczony na liście „Udostępnianie połączenia” po prawej stronie.
Następnie spróbuj uzyskać dostęp do lokalnego serwera za pomocą adresu IP komputera Mac w sieci Wi-Fi.
źródło
Mój problem był ten sam, ale rozwiązanie polegało na zmianie ustawienia zapory. Okazało się, że węzeł został ustawiony na blokowanie ruchu przychodzącego. Wiedziałem, że coś jest nie tak, ponieważ byłem w stanie uzyskać dostęp do mojego serwera lokalnego z telefonu.
Przejdź do Preferencje systemowe -> Bezpieczeństwo i prywatność -> Zapora -> Opcje zapory , a następnie przewiń w dół, aż znajdziesz węzeł i upewnij się, że ustawienie węzła jest ustawione na Zezwalaj na połączenia przychodzące .
Po zmianie ustawień mogłem dotrzeć do serwera localhost (port 3000) działającego na moim Macu, przechodząc pod adres http://192.168.1.11:3000
źródło
Rozwiązuję podobny problem.
http://<Mac ip>:<your customer server port>
w safari iPhone'aźródło
Użytkownicy systemu MacOS Sierra mogą znaleźć swój automatycznie wygenerowany skrócony adres URL, przechodząc do
System Preferences > Sharing
pola tekstowego Nazwa komputera i sprawdzając go. Aby uzyskać do niego dostęp, wprowadź ten adres URL oraz numer portu (np. Twoje-imię.lokalne: 8000) na telefonie iPhone przez to samo połączenie Wi-Fi co komputer.źródło
Podłącz swój iPhone do komputera Mac przez USB.
Przejdź do narzędzia sieciowego (cmd + spacja i wpisz „narzędzie sieciowe”)
Przejdź do zakładki „Informacje”
Kliknij menu rozwijane z napisem „Wi-Fi” i wybierz „iPhone USB”, jak pokazano tutaj:
Znajdziesz adres IP, taki jak „xxx.xxx.xx.xx” lub podobny. Otwórz przeglądarkę Safari na swoim iPhonie i wprowadź adres_IP: numer_portu
Przykład: 169.254.72.86:3000
[UWAGA: Jeśli pole adresu IP jest puste, upewnij się, że Twój iPhone jest podłączony przez USB, zamknij Narzędzie sieciowe, otwórz je ponownie i sprawdź adres IP.]
źródło
Proponuję użyć nazwy komputera np
http://mymac:1337/
. U mnie działa idealnie bez żadnej konfiguracji i nie muszę przejmować się zmianą adresów IP z powodu DHCP.źródło
Jak opublikowano, podążyłem za odpowiedzią moeamaya, ale musiałem trochę ją zmodyfikować, aby zobaczyć moją pracę w katalogu Witryny.
http://[name].local.~[username]/
[nazwa] jest taka, jak już podano (Preferencje systemowe / udostępnianie / „Nazwa komputera”)
[nazwa użytkownika] znajduje się pod adresem:
mam nadzieję że to pomoże!
źródło
whoami
w terminaluupewnij się, że telefon i komputer Mac są podłączone do tego samego Wi-Fi i możesz jechać
http://<machine-name>.local
źródło
Wypróbowałem wszystko na tej stronie, ale
http://<name>.local:<PORT>
działałem tylko na moim iPhonie po zamknięciu i ponownym uruchomieniu Safari ...źródło
Zawsze używaj adresu IP pokazanego w ustawieniach sieci. Zmienia się, gdy zmienisz lokalizację i użyjesz innego połączenia bezprzewodowego.
Na przykład w moim przypadku jest to teraz: 10.0.0.5
źródło
upewnij się również, że serwer nasłuchuje Twojego urządzenia mobilnego! na przykład, domyślnie jekyll odpowiada tylko na żądania wysłane przez komputer hosta. to rozwiązało mój problem:
Połącz się z lokalnie zbudowanym serwerem Jekyll za pomocą urządzeń mobilnych w sieci LAN
źródło