Як отримати доступ до веб-сайту, який працює на localhost, із браузера iPhone


266

Я працюю на мобільному веб-сайті і хотів би протестувати його за допомогою свого браузера iPhone. Моя машина Windows 7 та iPhone знаходяться в одній бездротовій мережі. Як отримати доступ до localhost з iPhone? Зараз я отримую помилку 404.


1
переконайтеся, що ви вимкнули брандмауер
ajahongir

На іншому / мобільному пристрої в тій самій мережі відвідайте: " IP_Adress: PORT ". Деталі наведені у відповідях, які випливають.
Аршин

Відповіді:


243

Доступ до localhost з iPhone просто зробить циклічне відключення / спробує підключитися до себе (Якщо він це підтримує?).

Що вам потрібно зробити, це знайти IP вашого робочого столу (наприклад, якщо Windows, перейдіть до Command Promptі введіть ipconfigабо перейдіть Network and Sharing Centreі шукайте connection status.

Коли у вас є ваш ip, просто відвідайте його у своєму браузері, наприклад http://192.168.0.102.

Вам може знадобитися відкрити порт 80 (або будь-який порт, на якому працює ваш веб-сайт) у вхідній безпеці вашого брандмауера, якщо він використовується.

Примітка: не забудьте в порт додатки , якщо то , що ви хочете, щоб налагодити додаток в браузері вашого iPhone як: http://192.168.0.102:3000. У цьому прикладі 3000 - порт за замовчуванням, який використовується ReactJS.


1
"Доступ до localhost з iPhone просто зробить циклічне відключення / спробує підключитися до себе (якщо він це підтримує?)" - Звичайно, він підтримує. Майже така ж відповідь, як і моя ахахахаха;)
cusspvz

1
Iphone, як і інші пристрої на базі Unix, symbian і win, мають потребу в зворотному циклі через деякі програми, які з'єднуються з іншими через TCP / IP Loopback адреси. Практично всі пристрої з мережею мають можливість зворотного циклу.
cusspvz

2
Якщо тестування призначене для wordpress, нам потрібно змінити URL-адресу веб-сайту на http://xxx.xxx.xxx.xxx/wordpressприладовій панелі wordpress.
Раджуль

1
Насправді спробуйте отримати доступ до localhost: порт до відкритого порту на вашій машині. Це працює на моїй установці.
orip

3
IINM, це не буде працювати для налагодження прогресивних веб-додатків, у яких зазвичай працюють сервісні працівники, оскільки сервісні працівники вимагають https, і для цього потрібні сертифікати. За допомогою Android він пересилає порти, щоб ви все ще могли користуватися localhost і тому не потребує клопоту з отриманням сертифікатів.
Макс Вотерман

174

Якщо ви використовуєте Mac, перейдіть до системних налаштувань> Мережа та використовуйте свою IP-адресу замість localhost. Ви також можете використовувати номер порту. У моєму випадку у мене є сервер, який працює на порту 1448, і я можу переглядати 192.168.1.241:1448 за допомогою iPhone.

MacOsNetworkSettings


5
Ця відповідь є ідеальним співвідношенням comp sci geek та візуальним дизайном geek. Молодці.
Roralee

40
Утримуючи клавішу Alt / Option, натискаючи на пункт рядка меню Wi-Fi. Це дає купу додаткової інформації про ваше з'єднання, включаючи локальну IP-адресу.
Вільям Робертсон

Не працює, якщо ваш сервер використовує virtualhost (кілька імен хоста)
Trinh Hoang Nhu

2018: Утиліта мережі> Інформація (перша вкладка)> IP-адреса (під інформацією про інтерфейс) - вона працює! thnku
webkit

2
Щоб отримати доступ до пісочниці розробки, мені довелося замінити хост пісочниці 0.0.0.0замість localhost. stackoverflow.com/a/35419631/1054633
Бен

28

ви можете спробувати ngrok.io . Працює за тим же принципом, що і локальний тунель.
Завантажте програму для свого ОС. і спробуйте запустити так:

для Linux:

./ngrok http 8000

8000 - номер порту, на якому працює ваша програма.

для вікон:

 ngrok.exe http 8000

2
Це теоретично може відповісти на питання, але найкраще було б включити сюди основні частини відповіді для майбутніх користувачів та надати посилання для довідки. Відповіді, що переважають за посиланнями, можуть стати недійсними через гниття посилань .
Могсдад

Дякую, я відредагував відповідь. Але це все ще переважає зв'язок. Однак завжди можна google у випадку, якщо зв’язок порушений.
Manish Gupta

28

Спробуйте це:

  1. Натисніть Windows+R
  2. відчинено cmd
  3. Виконати ipconfig (старий) ifconfig (новий)
  4. Перевірте IP-адресу бездротової картки
  5. Перейдіть на iPhone і перейдіть до " http://xxx.xxx.xxx.xxx/ " через веб-переглядач.
    (xxx.xxx.xxx.xxx - ваш IP)

Примітка. Ви повинні встановити дозвіл у налаштуваннях вашого брандмауера, якщо такі є.


Ти врятував мій день!
Олександр

21

Якщо ви використовуєте MAMP , введіть свою IP-адресу (скажімо, 192.0.0.63) у браузері iPhone Safari, а потім номер порту 8888 (наприклад, 192.0.0.63:8888), і ви зможете побачити свій локальний сайт у ваш iPhone.

А якщо ви використовуєте сервер WAMP , знову в браузері iPhone safari просто введіть IP-адресу (скажімо, 192.0.0.63), і все. Але не забудьте видалити deny from allфайл із файлу httpd.conf для вашого WAMP-сервера. Якщо ви шукаєте рядок allow from 127.0.0.1, над ним чи під ним ви побачите deny from all; просто видаліть цей рядок і перезапустіть свій WAMP-сервер, і це повинно бути завдання.


1
Номер порту MAMP залежить від ваших налаштувань на вкладці «сервер».
Дженні Джі

Я просто хочу додати одне зауваження: Якщо ви спробували, і це не спрацювало, спробуйте змінити мережу на щось інше, у моєму випадку я перейшов на точку доступу 4G свого телефону і він працював нормально
Tho Vo

21

Якщо ви використовуєте Mac -

  1. Підключіть свій iPhone до Mac через USB.

  2. Перейдіть до утиліти мережі (cmd + простір та введіть "утиліта мережі")

  3. Перейдіть на вкладку "Інформація"

  4. Клацніть на спадному меню з написом "Wi-Fi" та виберіть "iPhone USB", як показано на фото.

Утиліта мережі, виберіть iPhone USB

  1. Ви знайдете IP-адресу типу "xxx.xxx.xx.xx" або подібну. Відкрийте браузер Safari на своєму iPhone та введіть IP_address: port_number

    Приклад: 169.254.72.86:15000

[ПРИМІТКА. Якщо поле IP-адреси порожнє, переконайтеся, що ваш iPhone підключений через USB, вийдіть із Network Utility, відкрийте його ще раз і перевірте IP-адресу.]


Працює як шарм. Ще одна цікава особливість полягає в тому, що ви можете використовувати інспектора для розробки.
gazdagergo

3
Якщо ви не бачите IP-адреси, зробіть наступне: 1. увімкніть персональну гарячу точку на iPhone (підключення через USB) 2. вимкніть wifi на вашому комп'ютері. Таким чином iPhone перетворюється на маршрутизатор, і ви знову побачите IP-адресу.
gazdagergo

Це єдина відповідь, яка працювала на моїх 10-х, велике спасибі!
LAdams87

Це працює, але здається непотрібним, оскільки використання IP-адреси mac працює так само добре (тобто: IP-адреса, яку ви отримуєте, коли ви обидва на тому ж самому Wi-Fi, і ви вибираєте Wi-Fi (en0) із вищевказаного списку).
Том Оже

20

Якщо ви не в одній мережі, ви можете скористатися цим стороннім інструментом, який називається localtunnel

http://localtunnel.me/

Це, в основному, маршрутизує ваш вміст через інший сервер, і ви отримуєте доступ до нього.


Це вже було висвітлено в існуючій відповіді .
Могсдад

10

Якщо ви скоріше введіть ім'я хоста, а не IP-адресу

Перший варіант (швидкий шлях):

Ви повинні мати можливість переходити до http://my-macbook-pro.local/mywebsiteсвого iPhone. Дивіться https://stackoverflow.com/a/9304094/470749

Цей підхід, як правило, працює, оскільки домен ".local" - це особливе зарезервоване слово.

Другий варіант:

Дивіться http://xip.io/ , який є безкоштовним сервісом і дуже зручний. Не потрібно конфігурувати.

Тоді, коли ви перейдете на сторінку http://mysite.app.192.168.1.130.xip.io (за допомогою браузера на вашому сервері або на будь-якому пристрої вашої локальної мережі), вона відобразить сторінку, на якій розміщено сторінку 192.168.1.130.

І якщо ви працюєте з Homestead на машині, яка існує в цьому IP- адресі , переглядаючи http://mysite.app.192.168.1.130.xip.io:24300 (з портом в URL-адресі) якимось чином відображається сторінка, розміщена на Віртуальна машина Homestead Vagrant в 192.168.10.10. Досить дивовижно.

Третій варіант (який не залежить від послуги і є гнучким, але складнішим і працює лише у тому випадку, якщо у вас є маршрутизатор з DD-WRT):

Якщо у вас є один локальний сервер, на якому розміщено кілька різних сайтів, до яких ви хочете отримати доступ через різні імена хостів (через iPhone), ви можете це зробити.

  1. У вашій ОС змініть ім’я свого комп’ютера на щось коротке, осмислене і просте запам’ятовування, наприклад, «RYANDESK».
  2. У налаштуваннях маршрутизатора DD-WRT:
    1. В Services > Services > Static Leasesвстановіть MAC - адреса вашого сервера точки до певного IP - адресою, наприклад 192.168.1.108. Встановіть ім'я хоста таким, яким ви назвали свій комп'ютер раніше. "Час оренди клієнта" може становити 1440 хвилин.
    2. Обов’язково натисніть, Saveа також Apply Settingsіз кожною зміною. ("Зберегти", схоже, не автоматично застосує налаштування.) Якщо ви отримаєте помилку, можливо, тому, що дизайн графічного інтерфейсу DD-WRT вводить в оману, і ви зайво натискаєте "Додати" для статичних оренди.
    3. В DHCP Server > User Domain, виберіть "LAN & WAN". Для "Домену LAN" встановіть його на деяку коротку рядок, наприклад, ваші ініціали без будь-яких розділових знаків (наприклад, "xyz"). Можливо, уникайте використання слова "місцевий", оскільки можуть виникнути конфлікти. Не використовуйте реальні домени, такі як "com", "org", "net" тощо.
  3. В Services > Services > DNSMasq, включіть Dnsmasq і «Локальний DNS» і налаштувати «Додаткові опції Dnsmasq» , щоб бути що - щось на кшталт: address=/project1.xyz/project2.xyz/192.168.1.108(де xyzє все , що ви вибрали в попередньому кроці, на IP вказує на конкретну машину, і project1та project2є незалежно ім'я хоста ви хочете , щоб вказати на кожен із цих проектів (наприклад, різні конфігурації Nginx).
  4. Переконайтесь, що у вашому файлі HOSTS немає записів, що суперечать тому, що ми зробили. Якщо ви не знаєте, що таке файл HOSTS, ви, ймовірно, добре.
  5. Очистіть кеш DNS та випустіть та оновіть локальний IP-адрес. Увімкніть і вимкніть режим «Аероплан» на iPhone, щоб також промити кеш DNS.
  6. Тепер ви можете переглядати на http://ryandesk.xyzсвоєму iPhone (або у веб-переглядачі на робочому столі), і це буде вирішено на вашому локальному сервері. Тож сподіваємось, ви налаштували свій Nginx або Apache або що б там не було слухати для цього імені хоста.

    https://wiseindy.com/it/how-to-access-your-pcs-using-dns-names-with-dd-wrt/ http://www.howtogeek.com/69696/how-to-access- ваші машини, що використовують-dns-names-with-dd-wrt /


6

Для користувачів Mac відкрийте мережну утиліту (це можна знайти, ввівши cmd + простір, який відкриє прожектор, а потім у центрі уваги почніть вводити Network Utility). Виберіть Network Utility, коли вона відкрита, ваша IP-адреса буде знайдена поруч із міткою IP Address. Таким чином, в основному з IP-адресою, ви можете потрапити в будь-які відкриті порти на локальному mac, наприклад, якщо ваш веб-сайт працює локально на localhost: 3000, а ваша ip-адреса 154.31.92.0, то з телефону ви можете отримати веб-сайт, просто набравши 154.31. 92.0: 3000 у браузері.

PS - Це працює лише в тому випадку, якщо і телефон, і комп'ютер знаходяться в одній мережі


Це спрацювало чудово. У Network Utility я вибрав Wi-Fi замість Ethernet за замовчуванням, і тоді моя адреса була 10.0.1.3. На моєму Mac я мав програму, що працює на localhost: 3004, тому на iPad я набрав 10.0.1.3:3004 і мені вдалося переглянути сайт, який працює на моєму Mac. У більш складних випадках із субдоменами, такими як demo.mysite.local: 3004, я мав успіх у DNSMasq, але це складніший процес.
stahlmanDesign

5

WebpackDevServer localhost з iphone

Якщо ви використовуєте додаток, який працює на вузлі. ви можете використовувати webpack як інструмент збирання та використовувати їх вбудований devserver

Ви можете використовувати webpackdevserver, щоб запустити свою програму з локального сервера, а потім передати свою адресу localhost та порт на ваш вибір.

webpack-dev-server --host 192.168.0.89 --port 3000

то зі свого iPhone ви можете отримати доступ до нього за допомогою

http://192.168.2.89:3000

Примітка: Ваш ноутбук та iPhone мають бути в одній мережі, і ви повинні використовувати IP-адресу localhost.

Для Mac, як знайти ip-адресу, ви можете дізнатися Отримати локальну IP-адресу в node.js


5

Якщо ви використовуєте mac (OSX):

На вас mac:

  1. Відкритий термінал
  2. запустити "ifconfig"
  3. Знайдіть рядок із адресою ip "192.xx.xx"

Якщо ви тестуєте свій веб-сайт з адресою: "localhost: 8888 / mywebsite" (це залежить від вашої конфігурації MAMP)

На своєму телефоні:

  1. Відкрийте веб-переглядач (наприклад, Safari)
  2. Введіть URL-адресу 192.xxx.xx: 8888 / мій веб-сайт

Примітка . Ви повинні бути підключені до однієї мережі (Wi-Fi)


3

Ви можете використовувати ip комп'ютера замість http: // localhost .

Але це може бути недоступним. Ви повинні відредагувати httpd.conf (або еквівалентний файл конфігурації) вашого серверного програмного забезпечення. Зараз у мене не встановлено php, але ви можете шукати за ключовим словом: "Дозволити з або / Каталог"

Примітка: IP ПК, на якому працює XAMPP, повинен стати статичним IP-адресом (не призначений DHCP), інакше вам доведеться перевіряти це вручну під час кожного перезавантаження ПК.


3

Я хотів виконати те саме, що і оригінальний запит, і шукав відповідь тут, і вимикав кожен брандмауер та захист від вірусів безрезультатно.

Потім я знайшов такий документ щодо IIS express у документації на мікрософт: "IIS express не обслуговує запити до браузера на іншому комп'ютері, що полегшує його схвалення у корпоративних середовищах".

Підсумок - вам доведеться встановити IIS (не доставлений експрес IIS), щоб ваш проект побачив за межами комп'ютера.

Джерело: http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx

Сподіваюсь, це корисно для інших людей, які перестають ганяти, вимикаючи всі функції безпеки на своєму комп’ютері.


2

Якщо ви працюєте над проектом php, ви можете змінити базовий href:

<base href="<?php echo str_replace("localhost","192.x.x.x",HTTPS_SERVER);?>">

  • localhost або 127.0.0.1: залежно від налаштувань
  • 192.xxx: ваша локальна ip-адреса
  • HTTPS_SERVER: попередній базовий href

Це важливо для завантаження файлів зображень, css та js на телефон.


2

WIth WAMP :

1) вам слід натиснути на іконку WAMP> Покласти онлайн (дочекайтеся її повторного запуску).

2) Потім (якщо ви маєте WiFi на Iphone у тій же мережі), відкрийте свій IP-адресу в браузері iPhone

тобто http://192.168.1.22 АБО http://164.92.124.42

Щоб знайти локальні IP-адреси:
а) натисніть кнопку Пуск> Виконати> cmd і введіть ipconfig , і ви побачите там.
АБО
б) натисніть синю стрілку та "орендуйте новий ip".

ps Це все. тепер ви можете отримати доступ до (відкритого) localhost з Android або iPhone


2

Для тих із вас, хто використовує правильну IP-адресу, і Ви ВЖЕ не в змозі підключитися до локального сервера, ще одне, що потрібно перевірити, це те, що ви або ваш колега не налаштували пристрій на використання проксі-сервера.

У мене був один пристрій, який не підключався, і виявилося, що пристрій налаштовано на використання Charles Proxy, який, звичайно, не працює.


2

Знайдіть адресу вашої системи IPта те port, на якому веб-сайті ви працюєте.

Скажіть, ваша IP-адреса, 121.300.00.250а ваш порт 8080.

[Номер порту: дивіться веб-браузер під час запуску сторінки, наприклад: localhost: 8080 / ... тоді номер порту 8080]

Тепер у своєму мобільному телефоні перейдіть на сайт, 121.300.00.250:8080/..і ви знайдете свій веб-сайт.

ВАЖЛИВО: Ви повинні переконатися, що ваш сервер (наприклад, Apache Tomcat) у запущеному стані


1

Подивіться на цю відповідь , вона обговорює внутрішню маршрутизацію HTTP через прямі виклики Objective-C на рівень HTTP-сумісного / вбудованого веб-сервера (припустимо, що код сервера HTTP знаходиться в межах тієї самої програми, яка бажає відображати HTML в Інтернеті віджет).

Це має перевагу в тому, що він є трохи більш захищеним (а можливо, і швидшим), оскільки жоден порт не повинен бути відкритий.


1

Якщо ви рухаєтесь маршрутом входу в свої мережеві налаштування та отримання IP-адреси Wi-Fi, наприклад xxx.xxx.x.xxx:9000 (: 9000 або будь-який порт відкритий), переконайтеся, що ваш мобільний пристрій також знаходиться на тому самому Wi IP-адреса / сигнал / сигнал. Я провів день, намагаючись змусити це працювати, і це не спрацювало, поки я не відключив телефон від стільникової мережі на той самий Wi-Fi-з'єднання / IP-адресу. Відкрився відразу після того, як я зробив це оновлення.


Відключення мобільних даних для мене все змінило. Дякую!
Енді Стюарт

1

Є дуже простий спосіб досягти цього:

  1. Підключіть телефон і комп’ютер до однієї локальної мережі.
  2. Window + R, потім введіть ipconfig, тоді ви отримаєте поточний ip ур-ПК, він виглядає приблизно так: 192.168.XX.XX
  3. Введіть цей ip за допомогою свого порту додатка у веб-браузері телефону так: http: //192.168.XX.XX: 8080 , він працює

Примітка:

Якщо це не вийшло. Вимкніть антивірусне програмне забезпечення на своєму ПК, якщо воно все ще не працює, спробуйте вимкнути брандмауер Windows, оскільки проблема пов’язана з брандмауером ПК.


1

Кроки:

Я припускаю, що ви запустили веб-сервер (apache tomcat на типовому порту: 8080).

У Windows 10:

  1. Відкрийте антивірус, перейдіть до розділу брандмауера та знайдіть розділ порту та додайте локальний порт TCP / IP: 8080, щоб дозволити доступ
  2. отримати машинну ip адресу з командного рядка. (IPv4-адреса)
  3. Запустіть хром із iPhone та goto ip адреса : 8080 адреса.

Сподіваюсь, це допомагає.


0

Зі свого iphone я хотів переглянути веб-сайт, розміщений на сервері IIS на своєму ноутбуці Windows 8. Почитавши, я відкрив брандмауер Windows і вибрав "Дозволити програму або функцію через брандмауер Windows". Потім прокрутіть униз і встановіть позначку "World Wide Web Services (HTTP)" зі списку. Ось і все, спрацювало. Сподіваюся, що це допоможе і комусь іншому.


0

У моєму випадку я спочатку підключив свій ПК та мобільний телефон в одній мережі, ви можете пінг свого мобільного з ПК, щоб перевірити з'єднання.

Я запускаю свій проект з GGTS (Groovy / Grails Tool Suite) локально, потім переходжу на веб-сайт з мобільного за допомогою IP-адреси ПК, і це працює дуже добре.

PS. запуск із локальної версії надасть URL-адресу на зразок ( http: // localhost: 8080 / ім'я проекту ), ви повинні замінити localhost IP-адресою ПК, якщо ви намагаєтесь отримати доступ до свого локального веб-сайту з мобільного


0

Якщо ви перебуваєте на комп'ютері Mac, не забудьте відредагувати /etc/hostsфайл. Знайдіть IP-адресу за інструкціями вище та додайте наступний рядок до цього файлу

172.x.xx.x.x outer

Після цього виконані вище дії: перейдіть до потрібної сторінки в моєму браузері iphone, відвідайте http: //172.x.xx.xx: порт http://www.imore.com/how-edit-your-macs- господарі-файл-і чому ви хочете


0

Ще один швидкий і брудний спосіб зробити це на mac - це відкрити xcode (якщо він встановлений) і запустити сафарі на своєму тренажері. Введення тексту localhostтакож спрацює.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.