Существует ли файл hosts на iPhone? Как это изменить? [закрытый]


Я разрабатываю приложение, которое запрашивает сервер. В моем Mac я использую файл hosts, чтобы изменить dns, чтобы указать на локальный сервер в моей локальной сети.

теперь мне нужно проверить его с моим iPhone, проблема в том, что мой iPhone не распознает этот сервер из-за отсутствующей конфигурации для dns.

на моем Mac или Windows, я просто добавляю:192.168.0.20 http://www.google.com файл hosts.

теперь, как я могу позволить моему iPhone знать URL:http://www.google.com ?

8 89

8 ответов:

Это не дает прямого ответа на ваш вопрос, но это решает вашу проблему...

какой у Вас маршрутизатор? Прошивка маршрутизатора может позволить вам устанавливать DNS-записи для вашей локальной сети. Вот что я делаю с прошивкой Tomato

еще один вариант здесь, чтобы ваш iPhone подключиться через прокси-сервер. Вот пример того, как это сделать с Fiddler (это очень просто):

http://conceptdev.blogspot.com/2009/01/monitoring-iphone-web-traffic-with.html

в этом случае любые dns-запросы, которые делает ваш iPhone, будут использовать файл hosts машины, на которой работает Fiddler. Примечание, однако, что вы должны использовать имя, которое будет разрешено с помощью DNS. example.local, например, не будет работа. example.xyz или example.dev будет.

не связанные с программированием, но я все равно отвечу. Это в /etc/hosts.

Вы можете изменить его с помощью простого текстового редактора, такого как nano.

(очевидно, вам понадобится взломанный iphone для этого)

Я только что успешно отредактировал файл "hosts" моего iPhone (на взломанной iOS 4.0).

  • установлен OpenSSH на iPhone через Cydia
  • С помощью клиент SFTP как FileZilla на моем компьютере я подключился к своему iPhone
    • адрес: [используйте IP-адрес или имя хоста вашего телефона, например. simophone.local]
    • имя пользователя: root
    • пароль: alpine
  • расположенном в /etc/hosts file
  • сделал резервное копирование на моем компьютере (в случае, если я хочу вернуть свои изменения позже)
  • отредактировал файл hosts в приличном текстовом редакторе (например,Блокнот++). Смотрите здесь для объяснения файла hosts.
  • загруженные изменения, перезапись файла hosts на iPhone

телефон кэширует некоторые веб-страницы и DNS-запросы, поэтому перезагрузка или очистка кэша может помочь. Надеюсь, это кому-то поможет.

Саймон.

Он может существовать, но вы не можете изменить его на не джейлбрейкнутый iPhone.

предполагая, что ваш веб-сервер разработки находится на Mac, почему бы вам просто не использовать его имя Bonjour (например,MyMac.local.) вместо myrealwebserverontheinternet.com?

в случае, если кто-то еще попадает на эту страницу, вы также можете решить эту проблему, используя Ip-адрес в запросе URL вместо домена:

NSURL *myURL = [NSURL URLWithString:@"http://10.0.0.2/mypage.php"];

затем вы указываете хост вручную:

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:myURL];
[request setAllHTTPHeaderFields:[NSDictionary dictionaryWithObjectAndKeys:@"myserver",@"Host"]];

что касается сервера, он будет вести себя точно так же, как если бы вы использовали http://myserver/mypage.php, за исключением того, что iPhone не придется делать поиск DNS.

100% публичный API.

Не меняйте DNS на телефоне. Вместо этого подключитесь с Wi-Fi к локальной сети, и вы все настроены.

в моем офисе у нас есть внутренние серверы с внутренним DNS, которые не подвергаются воздействию Интернета. Я просто подключаюсь с iPhone к офисному Wi-Fi, а затем могу получить к ним доступ.

YMMV, но вместо настройки DNS телефона, мне кажется, что просто настройка локального внутреннего DNS и wifi-это более чистое и простое решение.

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

лучше всего, вероятно, использовать IP-адрес сервера, а не имя хоста. Чуть сложнее, но не это трудно, если вам просто нужно решить один адрес, было бы поставить DNS-сервер на вашем Mac и настроить iPhone, чтобы использовать это.