При условии, что вы настроили свой DNS так, чтобы запрошенный URL попадал на сервер, где находится ваше приложение (возможно, подстановочный DNS в вашем домене: * .site.com -> 123.45.67.89, если поддерживается вашим DNS-сервером / хостингом), вы Можно создать более или менее сложное правило перезаписи. Я бы сделал это так:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.*).r.site.com$
RewriteCond $1 !^index.php
RewriteRule (.*) index.php?subdomain_part=%1&file_part=$1
Таким образом, в index.php вы получаете $_GET['subdomain_part']
и $_GET['file_part']
, которые вы можете проанализировать далее для извлечения параметров в соответствии с вашим соглашением.
Конечно, вы можете написать более сложное регулярное выражение, чтобы получить части URL, извлеченные mod_rewrite (я сам не такой эксперт по регулярным выражениям). Однако выполнять синтаксический анализ в PHP будет намного проще, и вы сможете лучше обрабатывать ошибки (например, если URL сформирован неправильно).