2008-08-19 10 views
39

私は2つのホストを持っていると私はホスト2上のサブドメインにホスト1上のサブドメインを指したい:私はホストするためにCNAMEレコードを追加AまたはCNAMEレコードをSiteBのためにシティアをリダイレクトする方法

subdomain.hostone.com --> subdomain.hosttwo.com 

1つはサブドメイン.hosttwo.comを指しているが、私が得るのは「400 Bad Request」というエラーです。

誰かが間違っているのを見ることはできますか?

+11

これはトピックではありません。 DNS設定はプログラミングの領域にあります。 – superluminary

+20

@superluminary: "offtopic"は、モッドがフィールドを知らない、または悪い髪の日だった、またはチケットを閉じるためのバッジを望んでいたことを意味します。この場合、問題はServerFault IMHOに適しているため、移行されていて閉じられていないはずです。 – SamGoody

+0

これ以上同意できない場合は、このポストを再オープンまたは移行するか、DNS設定を両方の領域にまたがるものにする必要があります。 –

答えて

13

にそれを変更してみてください「サブドメイン - > subdomain.hosttwo.com」

CNAMEは、特定のドメインのエイリアスですので、あなたがhostone.com用コントロールパネルに行くとき、あなたが持っているべきではありません別名CNAMEに名前全体を入力します。

エラーが表示される限り、subdomain.hostwo.comにログオンしてログを確認できますか?

+0

通常のURIリダイレクトとCNAMEリダイレクトとはどのような違いがありますか? – Elankeeran

+2

@Elankeeran URLリダイレクトにパスを追加することができます - CNAMESは完全なドメインでしか作成できません。例えば。 URLサブドメイン(例えば 'www')を<[SubDomain。] Domain.TLD> [/ Path [/ ...]](例えば、' https:// www.example.com/sites/xyz')にリダイレクトします。 –

+0

CNAMEは、AドメインまたはAAAAレコードのエイリアスですが、これはドメインになることはできませんが、ドメイン名にはなりません(例: 'www。要するに、ドメイン名またはドメイン名内の* *という名前です。 –

2

hosttwo.comのWebサーバーは、未定義のドメインを通過させないように思えます。あなたはリダイレクトをしたいとも言っていましたが、これは実際にリダイレクトする方法ではありません。 GoDaddyを使ってこのドメインを購入した場合は、リダイレクトサービスを使用したいだけかもしれません。

+0

またはホストを変更する – Eoin

0

おそらく、301 redirectを設定するのが最も簡単な方法です。 DNSハッキングは必要ありません。

0

DNS名を別のIPアドレスにすることはできます。そのため、DNSでリダイレクトされている仮想ホストは使用できません。

ブラウザにsubdomain.hostone.comと入力すると、DNSを使用してIPアドレスを取得します(CNAMEの場合、AレコードからIPを取得するまで試行を続けます)。そのIPに接続して送信します

Host: subdomain.hostone.com

httpのヘッダーのどこかのhttp要求です。

0

多くのDNS以外の方法でこれを行うことができます。 subdomain.hostone.comのランディングページにはHTTP redirectを設定できます。 hostone.comのWebサーバーは、リダイレクト(Apacheで簡単、IISについてはわかりません)などの設定が可能です。

11

私はいくつかの回答があなたの問題を解決する可能性があると考えています。

私は、最も簡単な(そしてSEOの目的にとって最適な)301リダイレクトに同意します。 IISでは、これはかなり簡単です。サブドメイン.hostone.com用のサイトを作成し、サイトを作成した後、サイトを右クリックしてプロパティに移動します。開いたサイトのプロパティウィンドウの[ホームディレクトリ]タブをクリックします。 「URLへのリダイレクト」ラジオボタンを選択し、新しいサイトのURL(http://subdomain.hosttwo.com)を入力し、「上記の正確なURL」、「このリソースの永続的なリダイレクト」のチェックボックスをオンにします。 302リダイレクトの代わりに301リダイレクト)。 [OK]をクリックすると、完了です。次のいずれかの方法を使用して

それとも、http://subdomain.hostone.comのサイトのページを作成することもできますが、

PHPリダイレクト(ホスティングプラットフォームがサポートしているものに応じ):


<? 
Header("HTTP/1.1 301 Moved Permanently"); 
Header("Location: http://subdomain.hosttwo.com"); 
?> 

ASPリダイレクト:


<%@ Language=VBScript %> 
<% 
Response.Status="301 Moved Permanently" 
Response.AddHeader "Location","http://subdomain.hosttwo.com" 
%> 

ASP .NETリダイレクト:


<script runat="server"> 
private void Page_Load(object sender, System.EventArgs e) 
{ 
Response.Status = "301 Moved Permanently"; 
Response.AddHeader("Location","http://subdomain.hosttwo.com"); 
} 
</script> 

CNAMEレコードが正しく作成されていると仮定すると、唯一の問題は、http://subdomain.hosttwo.com用に作成されたサイトが共有IPを使用し、ホストヘッダーを使用して表示するサイトを決定することです。 IISでこの問題を解決するには、WebサーバーのIISマネージャで、subdomain.hosttwo.comのサイトを右クリックし、[プロパティ]をクリックします。表示された[Webサイト]タブで、クリックする必要のあるIPアドレスの横に[詳細]ボタンが表示されます。表示される[高度なWebサイトの識別]ウィンドウで、[追加]をクリックします。 subdomain.hosttwo.comによってすでに使用されているものと同じIPアドレスを選択し、TCPポートとして80を入力し、ホストヘッダー値としてsubdomain.hosttwo.comと入力します。メインのIISマネージャーウィンドウに戻るまで[OK]をクリックしてください。多くのサイトの所有者は、CDNサービスを使用している、あなたのURLが役立ちますhttp://subdomain.hostone.com

希望...

+0

PHPのheader()関数がすべて小文字であることは間違いありません。 –

+2

@UncleNinja:PHPはheader()関数をすべて小文字で定義していますが(これはコードで使用する方法です)、PHP言語はこの点で大文字小文字を区別しないので、 'Header()'は引き続きOKです。 – MrWhite

+1

@ w3dありがとう、私はそれについて知らなかった! –

2

これらの日を示していても、ブラウザを開き、http://subdomain.hostone.comを参照して、http://subdomain.hosttwo.comが現れる時、あなたはサイトを参照してくださいよCDNサーバーからデータを取得します。それはあなたのケースだならば、あなたは二つの選択肢が残されています。

  1. サブドメインを作成するだけでバックを指すCNAMEレコードを作成しないでくださいCNAMEレコードに

  2. を追加することにより、サブドメインおよび編集DNSを作成します。あなたの一時的なDNS URL。

この解決策は、それがcdn.sitename.comからデータをフェッチだが、事実上、そのあなたのCDNホストから引っ張っていることを示しますどのCDNからコードを引っ張っに暗示します。

関連する問題