PHP 虚假子域

PHP Fake Subdomain

我有一个项目可以免费打开很多网站。他们必须 运行 在用户想要的任何子域上。我无法为所有用户创建新的真实子域,也无法在创建新站点时将所有文件复制到新子域。它必须参考我的主要网站。所以,我想要一个这样的系统:

对于 "example" 子域:

example.domain.com -> domain.com/index.php?subdomain=example
example.domain.com/foo.php -> domain.com/foo.php?subdomain=example
example.domain.com/bar.php?foo=bar -> domain.com/bar.php?subdomain=example&foo=bar

对于 "new" 子域:

new.domain.com -> domain.com/index.php?subdomain=example
new.domain.com/foo.php -> domain.com/foo.php?subdomain=example
new.domain.com/bar.php?foo=bar -> domain.com/bar.php?subdomain=example&foo=bar

等...

我该怎么做?

谢谢!

会是这样的:

RewriteEngine on
RewriteCond   %{HTTP_HOST}                 ^[^.]+\.domain\.com$
RewriteRule   ^(.+)                        %{HTTP_HOST}          [C]
RewriteRule   ^([^.]+)\.domain\.com(.*) /index.php?subdomain=

但是您不需要 RewriteEngine 来完成您的任务...只需设置服务器以便它托管 *.domain.com 并在您的 PHP 脚本中使用类似的东西:

    <?php
       $subdomain = array_shift((explode(".",$_SERVER['HTTP_HOST']))); // will for example return "example" for "example.domain.com"
       if($subdomain == 'example'){
          do_something();
       }else if($subdomain == 'new'){
          do_something_new();
       }
    ?>