DNSを介してドメインを別のドメインにリダイレクトしようとしています。
IN CNAMEを使用することは可能であることを私は知っています。
www.proof.com IN CNAME www.proof-two.com.
私が必要としているのはパスを持つリダイレクトです。誰かがwww.proof.com
をタイプするとき、それはそれらをwww.proof-two.com/path/index.htm
に連れて行くべきです
Webサーバー機能を使用して実行できることはわかっていますが、DNSリダイレクトが必要です。
これは可能ですか?
いいえ、あなたが尋ねることは不可能です。 DNSは名前解決システムであり、HTTPについては何も知りません。
aWSを使用している場合、リダイレクトは
mail.foo.com --> mail.google.com/a/foo.com
次のように設定できます。
純粋なDNSソリューションではありませんが、うまくいきます。
ただし、注意してください、リダイレクトはすべてのURLパラメータをスキップします。例:...?param1 = value1&param2 = value2
私はこれが古いスレッドであることを認識していますが、他の誰かがこれを実行する方法を探しているのなら、FWIW。
DnsはURLのパス部分を認識しませんが、サブドメインを認識します。
www.proof.com IN CNAME www.proof-two.com/path/index.htm
あなたが使用することができます:
www.proof.com in CNAME proof.proof-two.com
それからあなたはどこでもproof-two.comをホストし、www.proof-two.com/path/index.htmにproof.proof-two.comを指すように設定します。
〜猫の皮を剥ぐ方法は常に複数あります
私はあなたがこの問題を解決するのを助けるかもしれない個人的なプロジェクトを持っています。これはオープンソースのリダイレクトソリューションで、DNS設定を変更するだけでドメインをリダイレクトできます。プロジェクトのリンク: https://redirect.center/ 。
URLパラメータを保持したままwww.proof.comをwww.proof-two.comにリダイレクトするには、単にwww DNSエントリをproof.comに設定してください。
www.proof.com IN CNAME www.proof-two.com.opts-uri.redirect.center.
元の質問に答えるために、いいえ、あなたが望むものは(みんなが言っているように)DNSだけでは不可能です。すでに述べたことすべてに加えて、もう1つの選択肢はURLリダイレクトサービスを使用することです。これらの種類のサービスを使用すると、ニーズに応じてさまざまな種類のURLリダイレクトを設定できます。例えば:
これを行うサービスは EasyRedir です。完全開示:EasyRedirを開発しました。確かに他の選択肢もありますので、ぜひご覧ください。
本当に redirect.center で簡単です
CNAMEを以下のように作成します。
www.proof.com IN CNAME www.proof-two.com/path/index.htm
redirect.centerを使用すると、CNAMEは標準モードのようになります。
www.proof.com IN CNAME www.proof-two.com.opts-slash.path.opts-slash.index.htm.redirect.center。
Https Webサイトにリダイレクトしたい場合は、このオプションを追加してください。
www.proof.com IN CNAME www.proof-two.com.opts-slash.path.opts-slash.index.htm.opts-https.redirect.center.
これで、運命のページに標準モードのスラッシュでCNAMEを作成できます。
インフラストラクチャー内でそのようなリダイレクトを許可しているのは私のプロバイダー(OVH)のようです。
参照してください: https://www.ovh.com/fr/g1339.redirection-nom-de-domaine
私はアーカイブのために以下の答えを守っていますが、それは意味のある情報を提供しません。
私はTXTレコードを使ってそれをしました。
foo.bar.com
をfoo2.bar.com/path
にリダイレクトするには、foo IN TXT "1|foo2.bar.com/path"
DNSゾーンにbar.com
を追加するだけです。
URLパスとパラメータも保持されます。 foo.bar.com/hello?foo=bar
にアクセスしようとすると、foo2.bar.com/path/hello?foo=bar
にリダイレクトされます。
DNSはURLのパス部分をリダイレクトしないので、それは不可能です。
追加中
www.proof.com IN CNAME www.proof-two.com
www.proof.comからwww.proof-two.comに直接アクセスします。ここでは、Webサーバーの設定を使用してユーザーを適切なページに誘導する必要があります。
@contacto連絡先と@adlawson
私は今、同じような挑戦に直面しているので、ここで月のために撃つつもりです。私は、技術レベルでDNSサーバーに実装されている解決策を見つけました。
完全な開示:あなたの走行距離のために私のDNSを管理するために www.dnsmadeeasy.com を使用します、GoDaddyまたは他のバニラ登録機関によって変わるかもしれません。
私のDNSソリューション:
HTTPリダイレクションレコードを使う - 私はURLを指す http://techshiftacademy.com Pythonクラスへの基本的な登録があるちょっとしたリンクへ。
この問題に対する私の解決策は非常に単純で直接的でした。必要なのは、ドメイン内で実行されているIISサーバーだけです。
IIS内の複数のサイトを解決するためにIIS内のホスト名を使用して、IISサーバーを指すようにDNSのCNAMEを設定します。私は、同じIISサーバーを使用して、いくつかのサブドメインを外部サイトに集約しています。
それからIISセットアップのリダイレクトであなたのオフサイトサイト/パスに行くためにそのサイトのために、私の場合それは私がcatalog.ourdomain.comに行きたかった私達のホストされたカタログでした。ここからすべての調整はIISで行われます。トラフィックがブロックされないように、匿名認証を必ず有効にしてください。
関連する研究は以下のすべてを締めくくった:
問題:
http://a.com/p1/p2.html に移動する必要があります http://B.com/p1/p2.html
今日、ただし後で手動または自動で設定した場合も同じ
http://a.com/p1/p2.html に移動する必要があります http://C.com/p1/p2.html
答え:
DNS - 名前をIPアドレスに変換します
それは多くのリダイレクトを行うことができますが、常に出力されますIPアドレスDNSはURLのパスやプロトコル部分を理解していない、ドメイン部分のみを理解し、つまり、あなたがヒットしたとき - http://a.com/p1/p2.html に変換される場合があります http://152.132.121.11/p1/p2.html DNSで間違った設定をした場合、 152.132.121.11( http://152.132.121.11/p1/p2.html ではありません)になるので、400sエラー(400、403など)になります。
リダイレクト - これは http://a.com/p1/p2.html に変換できます http://b.com/p1/p2.html
GET、POSTなどのすべてのメソッドは機能しますが、ヘッダーと本体があれば使用できますが、Webサーバーが関係している場合は失敗の原因となるため、スケーラビリティと可用性が重要になります。
オンAWSの場合、内部的にクラウドフロントを使用して、ルート53 - > API Gatewayをカスタムドメイン経由で使用できます。
Amazon Certification Manager、AWS Gatewayカスタムドメイン、Route 53で可能です。ACMのus-east-1制限に注意してください。
誰かに役立つことを願っています
私はあなたがこのシナリオを持っていると思います:あなたは様々なウェブサイトをホストしているユニークなウェブサーバーを持っています、それぞれは別々のドメインによって提示されることになっています:
そのため、page1.htmlはwww.customer1.comのように提供されます。
example.comdnsサーバー(あなたのウェブサーバー)の中にサブドメインを作成します。
customer1.example.com
次のように、Apache仮想サーバーの設定で、サブドメインを顧客#1のWebサイトを含むディレクトリにマッピングします。
<VirtualHost *:80> SetEnv PAGE_ID "customer1" ServerName customer1.example.com ServerAlias www.customer1.com DocumentRoot /your/local/path/webserver/customer1 </VirtualHost>
"ServerAlias"の値に注意してください、それは次のステップにとって重要です -
この時点で、以下を参照してcustomer1 Webサイトにナビゲートできるはずです。
customer1.example.com
CNAME = www LOCATION = customer1.example.com
これで、www.customer1.comを使用できます。
ほとんどの人がすでに述べたように - 一方、それだけでDNSを使用することは不可能です。回避策として、NGINX( http://nginx.org/en/docs/http/request_processing.html )を試すことをお勧めします。
TL; DR - NGINXでは、サーバー名に基づいてリクエストをリダイレクトできる複数の仮想サーバーを作成できます。
例 http://first.my-server.com Aにリダイレクトし、 http://second.my-server.com Bにリダイレクトします。単一の物理サーバー.
Htaccess rewrite modを使用できます。ユーザーが特定のドメインを要求しているのであればサブフォルダーに書き換えてください。