3

PHPでウェブサイトを開発します。しかし、私が使用しようとしている方法が最善のアプローチであるかどうかはわかりません。同じサイトに多くのアドオンドメインがあります。ただし、コンテンツは、サイトへのアクセスに使用されたドメインに基づいてフィルタリングされます。

たとえば、ユーザーがドメインsiteusa.comから来た場合、コンテンツは特定のユーザーに応じてフィルタリングされて表示されます。ユーザーがsiteuk.com/sitechina.comから来た場合、コンテンツはそれに応じてファイリングされます...

URLを検出してコンテンツを提供するために、このようなことを行う予定です。

 $ref = getenv("HTTP_REFERER");
    echo $ref; 

またはによって

$host = $_SERVER['HTTP_HOST'];
echo $host ;

これはこれを行うための最良の方法ですか?私が陥る可能性のあるボトルネックはありますか?これにより、ドメインがクリティカルとして検出されます。

サイトのメインドメインはフィルタリングされていないコンテンツを提供し、各アドオンドメインは、バックエンドからの各ドメインに設定されたフィルターに従ってコンテンツをフィルタリングします。

ちょっとした質問がありますが、codeigniterに関してはここにあります。

4

1 に答える 1

2

HTTP_REFERERは悪い選択です。ユーザーがサイトに直接アクセスすると、HTTP_REFERERは空になります。

HTTP_HOST / SERVER_NAMEでうまくいくはずですが、負荷分散ソフトウェアまたはプロキシの背後で失敗する可能性があります。

したがって、サーバーの構成によって異なります。ホスト構成(Apache仮想ホストなど)にアクセスできる場合は、ドメインごとに各仮想ホストでENV変数を指定するだけです。

于 2010-10-10T09:25:36.903 に答える