Symfony动态子域

Flu*_*key 11 php subdomain symfony1 filter

我正在尝试将子域名与symfony中的客户ID进行匹配.

即我有customer1.example.com和customer2.example.com

域存储在表中.

当用户访问customer1.example.com时,我想获取子域名,在数据库中查找域名,一旦匹配,它将为该客户部署app config,然后将customer_Id存储在全局属性中所以我确切地知道我正在处理整个应用程序的客户.虚拟主机将具有相关的通配符服务器名称.

你有没有成功实现这一目标,如果是,如何实现?如果没有,任何想法都将是一个很大的帮助!

我正在考虑使用过滤器来做到这一点.

:-)

sha*_*oul 4

还需要将您的域设置为通配符域,如果不需要,您将需要为每个客户端手动创建每个子域。

另一个不太依赖交响乐的解决方案是使用 .htaccess

    <IfModule mod_rewrite.c>
   Options +FollowSymLinks
   Options +Indexes
   RewriteEngine On
   RewriteBase /
   RewriteCond %{HTTP_HOST} !www.domain.com$ [NC]
   RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-]+).domain.com [NC]
   RewriteRule (.*) $1?sub=%2&page=$1&domain=%{HTTP_HOST} [QSA,L]
<IfModule>
Run Code Online (Sandbox Code Playgroud)

该代码基本上会将子域、域和请求的页面发送到请求的页面。然后在 php 中你可以检查它是否等于你的客户端用户名。并允许您同时为您的客户使用托管域名。

我希望它有帮助。