经过几个小时的研究,我仍然无法找到答案,但我确信有办法解决它。
我有一个Symfony应用程序,其中包含我的客户的网站
路由如下:/app.php/ {userId} /
我想创建域(不是子域)来指向每个用户页面,所以
domain1.com - > app.php / 1 /
domain2.com - > app.php / 2 /
等等...
但是当我尝试使用Apache主机时,我收到一个Symfony错误:"找不到GET /"的路由。我理解为什么,但我无法找到Apache主机或htaccess的解决方案,而不是Symfony。
我不想复制我的app.php或app文件夹。
也许解决方案是在htaccess ...中
你觉得怎么样?
提前感谢您的想法:)
于连
答案 0 :(得分:7)
对于每个主机名,您可以在simfony应用程序中设置一个虚拟主机,其文档根目录如下:
<VirtualHost *:80>
ServerName domainone.com
DocumentRoot "/Projects/Project/web"
<Directory "/Projects/Project/web">
Options Indexes FollowSymLinks
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName domaintwo.com
DocumentRoot "/Projects/Project/web"
<Directory "/Projects/Project/web">
Options Indexes FollowSymLinks
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
像ServerAlias所说 您还可以将一个具有多个主机名的VirtualHost标记作为ServerAlias
ServerName domainone.com
ServerAlias domainone.com domaintwo.com
在symfony路由配置中,您可以解析主机名
routing_one:
resource: "@yourBundle/Resources/config/routingOne.yml"
prefix: /customerIdOne
host: "domainone.com"
routing_two:
resource: "@yourBundle/Resources/config/routingTwo.yml"
prefix: /customerIdTwo
host: "domaintwo.com"