PHPから自動でサブドメインつくる (cakePHP)

Pocket
LINEで送る

よくあるアカウント登録してサブドメイン名登録すると、ユーザ専用のサイトを作成できるようにしたいがやったことがない。

サーバはEC2のAmazonLinuxを使っています。ドメインはRoute53で管理してます。
Route 53のRecord Setsで、*.hoge.comとやれば、どんなサブドメインでもhoge.comと同じように扱うことができます。
後はcakePHPのルーティングでうまく処理できれば終了なんじゃないかと思います。

AppControllerとかでサブドメインの文字列を取得して、その文字列内容に応じて処理を切り替えれば、route.phpの設定なども必要ないんじゃないでしょうか。

private function get_subdomain(){
	$url = explode('.',env('HTTP_HOST'));
	$this->subdomain = $url[0];
}

最初のドットまでを取得しているので、サブドメインなしとか、IPアドレスでアクセスとか、wwwアクセスとかも、最初のドットまでを取得してしまう。それを省けば大丈夫っぽい。あとは$this->subdomainの内容に応じて表示内容を変えればoKじゃないでしょうか?

Pocket
LINEで送る

コメントください

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください