新しいドメイン名の仮想ホストを作成せずにドメイン名を仮想ホストのサブフォルダに関連付ける方法は?

新しいドメイン名の仮想ホストを作成せずにドメイン名を仮想ホストのサブフォルダに関連付ける方法は?

ドメイン名が2つあるとしましょう。

 domain1.tld
 domain2.tld

あなたのサーバーIPは1.1.1.1です。

httpdをインストールし、そのIPに対してのみ仮想ホストを設定します。

Listen *:80
DirectoryIndex index.php

<VirtualHost *:80>
DocumentRoot /1/
ServerName ooo
</VirtualHost>

まだドメイン名に何も設定していません。
ただし、ドメイン名はDNSを介してサーバーのIPを指すため

彼らはまだネットワーク経由でこの仮想ホストにアクセスします。

私はPHPを使用していませんが、
その仮想ホストにindex.phpがあるとしましょう。


mysqlに入り、適切なコンテンツを表示できるようにどのドメインが使用されているかを知りたいです。

index.phpはどのドメインが使用されているのか、どうすればわかりますか?

または、youtube.com/usernameの代わりにyoutubeやtwitterなどのサイトを運営しているとします。

ユーザーは自分のドメイン名を使用できるようにすることができます。

ドメイン名をどのように関連付けることができますか?

youtube.com/ユーザー名

答え1

php環境変数は から渡されますapache。そのうちの1つは次のような配列です。$_SERVERこれには、サーバーと現在処理中の要求に関する情報が含まれます。

要素の1つには、クライアントが要求したサーバー名が$_SERVER含まれていますHTTP_HOST(通常はブラウザのアドレスバーのURLのサーバー部分)。

その後、スクリプトはphpこの値を使用して要求されたURLを確認し、適切なアクションを実行できます。

関連情報