У меня есть веб-страница с простой формой HTML, например:
<form method="POST" action="/something">
<input type="text" name="something">
<input type="submit" value="Send">
</form>
Когда сервер, на котором он размещен, доступен как по IPv4, так и по IPv6, есть ли способ заставить эту HTML-форму POST выполняться через IPv4 без изменений на веб-сервере?
Если я попробую 1.2.3.4/something
как действие, это не удастся, поскольку заголовок хоста отсутствует. И если я создам поддомен вроде v4.example.com
у которого есть только IPv4-адрес (а затем используйте v4.example.com/something
), это не сработает, поскольку этот поддомен не будет включен в конфигурацию apache и не будет назначен этому vHost.
Могу ли я каким-то образом, просто изменив HTML-форму, заставить клиента отправлять эту форму по IPv4? Или мне для этого нужно внести изменения в конфигурацию Apache?
Как и тот же тест подключения к Интернету, это ошибочно.
Чтобы проверить, что отправитель формы связан с определенной организацией или сайтом, используйте логины учетной записи или аналогичные идентификаторы.
Чтобы определить, откуда поступают соединения, посмотрите таблицы интернет-маршрутизации или используйте API-интерфейсы геолокации.
Единственный способ сделать это:
Отправить форму по адресу v4.example.com
, который имеет только запись A для веб-сервера, на который вы отправляете форму.
На веб-сервере настройте виртуальный хост с v4.example.com
доменное имя или добавить v4.example.com
как дополнительный домен к существующему виртуальному хосту.
Тогда могут возникнуть проблемы с междоменными доменами, о которых вам нужно позаботиться.