web-dev-qa-db-ja.com

別のポート番号を指すサブドメインを作成するにはどうすればよいですか?

私のユースケースでは、メインドメインのIPアドレスを使用して、ポート番号が異なるサブドメインを作成したいと思います。例えば:

abc.comを指す192.168.1.1としてメインドメインがあります

@              192.168.1.1

以下のようにポート8081のサブドメインを作成したいと思います。

api.abc.com    192.168.1.1:8081

しかし、それは不可能のようです。そこで、次の情報を使用してSRVレコードを作成しようとしました。

Name: api
Target: api.abc.com
Protocol: _http
Service: _http
Priority: 5
Weight: 5
Port: 8081
TTL: 1 hour

しかし、これは役に立ちませんでした。これを達成する方法はありますか?ドメインの管理にGodaddyを使用しています。

誰かがこれを手伝ってくれませんか?

2
Dany

ドメイン名または静的に定義されたホスト名にポート番号を割り当てることはできません。

ホスト名は IPアドレス に変換され、 ポート番号 はIPアドレスに追加される個別の番号です。


DNS サービスレコード(SRV) を使用すると、サービスの場所をIPアドレスとポート番号を含めて定義できますが、これには、DNSにSRVレコードを照会する特定のアプリケーションが必要です( RFC2782 はそれらを「SRV認識クライアント」と呼びます)。

HTTPプロトコルに接続するブラウザは、常にポート番号80に接続します(ポートがクライアント側で指定されている場合を除くhttp://...:8080/)。 DNSにSRVレコードを照会しません。


ユースケースでは、ブラウザから指定されたHost HTTPヘッダーに基づいて接続をリダイレクトするようにHTTPサーバー(またはリバースプロキシ)を構成できます。一般に「仮想ホスト」と呼ばれる機能。

このシナリオでは、サーバーはポート80で外部接続をリッスンし、クライアントが要求したアドレスを確認します。 api.abc.comの場合は、接続を内部ポート8081に転送します(最も一般的には、内部追加、つまり127.0.0.1:8081に構成されます)。それ以外の場合は、通常のWebサイトのコンテンツを提供します。

クライアントブラウザがSNIをサポートしている場合(および現在のほとんどのブラウザがサポートしている場合)、HTTPS接続も可能です。

8
techraf