Файлы Htaccess здесь не помогут, поскольку они расположены под корнем документа и поэтому оцениваются после того, как apache определил, какой виртуальный хост указывает на этот конкретный корень документа.
Предполагая, что ваши записи DNS хорошо настроены, вам следует вместо этого изменить основную конфигурацию apache.
Если каждый поддоменов указывает на другой корень документа, вам придется создать виртуальный хост для каждого из них:
<VirtualHost *>
ServerName example.org
DocumentRoot /path/to/example.org
# ...
</VirtualHost>
<VirtualHost *>
ServerName test1.example.org
DocumentRoot /path/to/test1.example.org
# ...
</VirtualHost>
Если, вместо этого, несколько субдоменов указывают на одного корня документа, вы можете использовать ServerAlias директива:
<VirtualHost *>
ServerName example.org
ServerAlias test1.example.org
DocumentRoot /path/to/example.org
# ...
</VirtualHost>
Если все возможные поддомены указывают на тот же корень документа, вы можете избавить себя от боли списка каждый субдомен в списке ServerAlias и использовать маску вместо:
<VirtualHost *>
ServerName example.org
ServerAlias *.example.org
DocumentRoot /path/to/example.org
# ...
</VirtualHost>
Есть, конечно, больше конфигураций, необходимых для обеспечения правильного функционирования каждого виртуального хоста, но это основные строительные блоки, которые вы должны понимать, чтобы иметь рабочую настройку.
Это называется подстановочный знак, и они не поддельные, подстановочный знак позволяет использовать любое имя поддомена на вашем домене, однако для этого требуется 2 вещи: 1) настройка DNS 2) настройка HTTP-сервера, если у вас нет 1 и 2 с wildcard вы не можете этого сделать. Если у вас есть cPanel, например, вы можете использовать API cPanel для динамического создания поддоменов, но это о нем. – Prix