I'd like to define a route 'product_page' which will map to different patterns based on the host. The patterns for each route will be different, but I'd like for the route name to be the same so that I can use the same name in my console commands when generating URLs via the route (based on passed host name). I cannot figure out how to make this happen, since it seems that routes of the same name overwrite previous routes. For example:
product_page:
pattern: /product_page_type_1/{id}
host: domain1.com
defaults: { _controller: AcmeDemoBundle:Default:index}
requirements:
id: '[\d]+'
product_page:
pattern: /product_page_type_2/{id}
host: domain2.com
defaults: { _controller: AcmeDemoBundle:Default:index}
requirements:
id: '[\d]+'
Then, in my console command, I'd like to generate a URL based on the product_page route and host. For example:
//should equal http://domain1.com/product_page_type_1/999
$this->getContainer()->get('router')->generate('product_page', array('id' => 99, 'host' => 'domain1.com'), UrlGenerator::ABSOLUTE_URL)
//should equal http://domain2.com/product_page_type_2/999
$this->getContainer()->get('router')->generate('product_page', array('id' => 99, 'host' => 'domain2.com'), UrlGenerator::ABSOLUTE_URL)
Is this even possible?