Альтернативный хост / IP для скрипта Python

1

Я хочу, чтобы мой Python script получал доступ к URL-адресу через IP-адрес, указанный в script, а не через DNS-домен по умолчанию для домена. В принципе, я хочу эквивалент добавления записи в файл /etc/hosts, но я хочу, чтобы это изменение применимо только к моему script, а не глобально на всем сервере. Любые идеи?

Теги:
dns
urllib
hosts

2 ответа

1
Лучший ответ

Будет ли это работать или не будет зависеть от того, использует ли сайт дальнего конца HTTP/1.1 виртуальный хостинг на основе имени или нет.

Если это не так, вы можете просто заменить часть имени узла URL-адресом на свой IP-адрес, отвечая на @Greg.

Если это так, вы должны убедиться, что правильный заголовок Host: отправлен как часть HTTP-запроса. Без этого веб-сервер виртуального хостинга не будет знать, какой контент сайта вам дать. Обратитесь к своему API-интерфейсу HTTP (Curl?), Чтобы узнать, можете ли вы добавлять или изменять заголовки запросов по умолчанию.

0

Вы можете использовать явный IP-номер для подключения к определенному компьютеру, вставив его в URL-адрес: http://127.0.0.1/index.html эквивалентен http://localhost/index.html

Тем не менее, не рекомендуется использовать IP-номера вместо записей DNS. IP-адреса изменяются намного чаще, чем записи DNS, что означает, что ваш script имеет больший шанс взлома, если вы жестко закодируете адрес, а не разрешаете его нормально работать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню