.htaccess根据数据库将域或子域重定向到变量

时间:2014-09-15 13:50:37

标签: php apache .htaccess redirect

我正在尝试将域/子域重定向到变量,例如:

sub.domain.com --------> domain.com/site/site=sub
domain2.com -----------> domain.com/site/site=domain2

这必须依赖于数据库值。

不确定这是否可以使用php或.htaccess

由于

Siriuo

1 个答案:

答案 0 :(得分:0)

你可以用PHP做到这一点,但如果这是每次请求都会发生的事情,那就有点矫枉过正了。如果这是用于负载平衡的东西,那么SAPI内置了更好的解决方案,如nginx

否则,我实际上建议编写一个非常简单的Node.js应用程序,它在应用程序面前像代理一样工作。代理应用程序应查询内存数据库,如Redis,甚至是MySQL MEMORY类型数据库。您不希望等待磁盘读取重定向。这将允许您的主应用程序(PHP App)编写确定子域路由到内存数据库所需的任何值,并且简单的Node.js将查询数据库并提供301 / 302或者在需要时实际执行内部管道。

[SAPI (Nginx, Apache, etc)] --- [Node.js Proxy]  --- (if x) --- [PHP domain.com]
                                    |            `-- (if y) --- [301 to PHP sud.domain.com]
                                    | Query DB                           |
                                    |                  Write DB          |
                                [Redis DB]-------------------------------