-1

example.com と呼ぶ Web サイトがあります。この Web サイトには、a.example.com、b.example.com、c.example.com などのいくつかのサブドメインがあります。ドメインへの訪問者が特定のサブドメインを優先ページとして選択できるようにしたいと考えています。この時点から、ユーザーがページにアクセスすると、ユーザーは自動的に優先ページにリダイレクトされます。

これを行う方法や、どこを見ればよいかさえわかりません。

4

3 に答える 3

1

まあ、あなたが必要です

a) Cookie ( PHPまたはJavascriptを使用) またはデータベース (ユーザーがログインしている場合) などの設定を保存する場所

b) ユーザーが好みを設定できるページ

c) ユーザーを好みのサイトにリダイレクトするスクリプト (たとえば、PHPのヘッダー関数を使用)

于 2013-10-26T12:29:32.303 に答える
1

以下のように、サブドメインurlをページ ( settings.php )に追加します。

<a href="choose.php?sub=abc">Choose ABC Subdomain</a><br/>
<a href="choose.php?sub=bbc">Choose BBC Subdomain</a><br/>
<a href="choose.php?sub=subin">Choose subin Subdomain</a>

choose.php :

<?
if($_GET['sub']!=''){
 $sub=$_GET['sub'];
 setcookie("subwhere",$sub, time()+301014600, "/", "example.com"));
 header("Location:http://$sub.example.com");
}
?>

index.phpには、ページの上部にあるcheckredirection.phpファイルを含めます。

<?
include("checkredirection.php");
?>

checkredirection.php :

<?
$coo=$_COOKIE['subwhere'];
if($coo!="" && $_SERVER['SERVER_NAME']!="$coo.example.com"){
 header("Location:http://$coo.example.com");
}
?>

ユーザーにリダイレクトさせたいページにcheckredirection.phpを含めます。

于 2013-10-26T12:29:39.540 に答える
1

まず、ユーザーは登録されてログインしていますか、それとも IP アドレスで識別していますか?

登録してログイン: ユーザー ID、電子メール、またはデータベースの主キー (できれば ID) として使用するものを、ユーザーが好みを選択するときに、好みのサブドメインと共に別のテーブルに記録します。

未登録/ログイン: IP アドレスとサブドメインの選択を表に記録します。

基本的なテーブル構造は

id - ip_address(または user_id) - サブドメイン

次に、IP またはユーザー ID についてデータベースをチェックする if ステートメントを実行します。

<?
    /* database checking code, etc, assuming we're returning $result from the query */
    $subdomain = @mysql_result($result,0,'subdomain');
    if($subdomain != '') header('Location: '.$subdomain.'.yourdomain.com');
?>

これは 1 つの戦略にすぎず、おそらく最も基本的なものです。明らかに、コードを作成する必要があります (これを行う方法を知っていて、戦略が必要であると想定しています。それ以外の場合は、ここで質問するのではなく、チュートリアルを参照してください)。つまり、ファイルの先頭にあります)。

好みが見つからない場合は、そのページにとどまります。

寝ぼけて書いているので、不備や分かりにくい情報がありましたら申し訳ありません。

于 2013-10-26T12:36:47.287 に答える