次のような単純なHTMLフォームを含むWebページがあります。
<form method="POST" action="/something">
<input type="text" name="something">
<input type="submit" value="Send">
</form>
これがホストされているサーバーがIPv4とIPv6の両方で到達可能である場合、Webサーバーを変更せずにこのHTMLフォームPOSTをIPv4で実行するように強制する方法はありますか?
アクションとして1.2.3.4/something
を試してみると、Hostヘッダーがないため、失敗します。そして、IPv4アドレスだけを含むv4.example.com
のようなサブドメインを作成すると(そしてv4.example.com/something
を使用して)、そのサブドメインはApache構成に含まれず、そのvHostに割り当てられます。
HTMLフォームを変更するだけで、クライアントにそのフォームをIPv4経由で送信させることができますか?または、それを行うためにApache構成を変更する必要がありますか?
同じインターネット接続テストとして、これは欠陥があります。
フォーム送信者が特定の組織またはサイトに関連付けられていることを確認するには、アカウントログインまたは同様の識別子を使用します。
接続がどこから来ているかを特定するには、インターネットルーティングテーブルを検索するか、ジオロケーションAPIを使用します。
これを行う唯一の方法は次のとおりです。
フォームをv4.example.com
に送信します。これには、フォームを送信するWebサーバーのAレコードのみが含まれます。
Webサーバーで、v4.example.com
ドメイン名を使用して仮想ホストをセットアップするか、既存の仮想ホストに追加のドメインとしてv4.example.com
を追加します。
次に、対処する必要のあるクロスドメインの問題が発生する可能性があります。