web-dev-qa-db-ja.com

サブドメインをHTTPS Webサイトにリダイレクトする

WebサイトのサブドメインをサードパーティのHTTPS Webサイトにリダイレクトする必要があります。私たちのウェブサイトはGoDaddyでホストされており、サブドメイン転送メカニズムを試しましたが、うまくいきませんでした。そのとき、ホスティングで別のサブドメイン(そのサブドメイン名でフォルダーを作成)を作成しました。次に、次のコードを含むHTMLファイルを配置しました。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta HTTP-EQUIV="REFRESH" content="0; url=https://third-party-domain.com">
<title>Untitled Document</title>
</head>

<body>
</body>
</html>

しかし、これはうまくいきませんでした。次に、これを使用して.htaccessリダイレクトを試みました。

Redirect 301 / https://third-party-domain.com

しかし、これも機能しませんでした。何が間違っていますか?

1
hpb

Htmlの開いているbodyタグを次のように変更します。

<body onload="window.location='https://third-party-domain.com';">

これにより、javascriptが実行され、ウィンドウが使用するURLが新しいURLに設定されます。 JavaScriptが無効になっている場合、これは機能しないため、新しいURLへのリンクを含めることができます。 W3Cによれば、metaリフレッシュを使用してユーザーをリダイレクトすることは、ユーザーの方向感覚を損なうため推奨されません。

ホストでPHPを使用できる場合は、サブドメインが指すフォルダーのインデックスファイルを、次のみを含むindex.phpファイルに置き換えるだけです。

 <?php 
 header( 'Location:https://third-party-domain.com'、301); 
?> 

これにより、301ヘッダーがユーザーのブラウザに送信され、適切なURLにシームレスに送信されます。

1
Justin Pearce