Существует ли файл 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 ответов:
Это не дает прямого ответа на ваш вопрос, но это решает вашу проблему...
какой у Вас маршрутизатор? Прошивка маршрутизатора может позволить вам устанавливать 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, чтобы использовать это.