Не удается получить доступ к localhost с устройства Android

Эмулятор может получить доступ к веб-службе с локального хоста, но мое реальное устройство не может, хотя я использую IP-адрес локальной сети (192.168.xx.yyy) вместо 10.0.2.2. Конечно, мой мобильный Android был распознан adb, и он подключил мой ноутбук через USB-порт.

Я уже читал некоторые подобные вопросы в stackru, но все еще не знал, как получить доступ к веб-сервису с реального мобильного телефона Android. Ответ на этот вопрос Как я могу получить доступ к своему локальному хосту с моего устройства Android? может быть полезным, но я не очень понимаю этот ответ.

Кто-нибудь помогает мне? Спасибо вам!

3 ответа

Возможно, веб-сервер прослушивает петлевой интерфейс, но не сетевой интерфейс. Это означает, что хиты на 127.0.0.1 а также localhost будет работать, но 192.168.xxx.xxx не будет (будь то с локального хоста, локальной сети или глобальной сети).

Чтобы определить, какой интерфейс прослушивает сервер, найдите здесь команду, которая расскажет вам о портах прослушивания (я использовал lsof -Pan -i tcp -i udp). Затем найдите ваш серверный процесс в списке. Для lsof команда, если для порта 8888 вы видите что-то вроде TCP *:8888 (LISTEN) тогда ваш сервер прослушивает все интерфейсы. Но если вы вместо этого видите что-то вроде TCP [::127.0.0.1]:8888 (LISTEN) тогда вы определили свою проблему!

Следующим шагом для решения вашей проблемы является настройка конфигурации запуска вашего сервера для прослушивания всех интерфейсов. Я не знаю, какой сервер вы используете, но если вы можете указать IP-адрес, то вы можете попробовать 0.0.0.0, Обычно вы можете сделать это рядом, где это позволяет вам указать порт прослушивания. Таким образом, если у вас есть такая конфигурация:

--port 8888

Тогда вы можете попробовать:

--port 8888 --address 0.0.0.0

На мой взгляд, следующий пункт является более важным для сообщества разработчиков

Я не сетевой эксперт; как и я, многие разработчики могут быть там.

изменить на 0.0.0.0:80 в httpd.conf очень важно.

При обычных (стандартных) настройках порт 8888 выдает ошибку в WAMPSERVER (даже в браузере Windows). Вот почему я объяснил точную среду, в которой порт 8888 выдает ошибку.

Более важна конкретная информация о том, какая конфигурация выдает ошибку и какая конфигурация работает успешно.

Вы пытались использовать Wi-Fi роутер, который подключен к вашей локальной сети? Тогда вам просто нужно подключиться к Wi-Fi с помощью мобильного телефона, и вы должны иметь доступ (192.168.xx.yyy)

Другие вопросы по тегам