[Symfony] サブドメイン別にルーティングを制御する
Symfony 2.2 で正式に追加された機能の様です。
フロントエンドをexample.com
、バックエンドをsystem.example.com
としてそれぞれ別のバンドルで運用する場合の設定例をご紹介。
まずはバックエンド用のバンドルを作成します。
$ php app/console generate:bundle --namespace=Acme/BackendBundle --format=annotation
続いて上記コマンドで自動追記されたBackendBundle
へのルーティングを修正します。
# app/config/routing.yml # バックエンド system: resource: "@BackendBundle/Controller/" type: annotation prefix: / host: system.example.com # 追加! # フロントエンド homepage: resource: "@FrontendBundle/Controller/" type: annotation prefix: /
新しく追加されたhost
によってサブドメインのルーティングを制御できるようになりました。これでsystem.example.com
はすべてBackendBundle
のコントローラにルーティングされます。
とっても簡単!