Заголовок хоста уже будет содержать запрашиваемый клиентом домен. Вы можете просто взять это в php
$domain = $_SERVER['HTTP_HOST'];
Однако, если у вас нет сертификата SSL с подстановочными знаками, у вас будет плохое время.
Согласование SSL происходит перед любым обменом HTTP, поэтому, если субдомен и сертификат SSL не согласны, соединение не будет установлено.
Кроме того, замена субдомена на строку запроса - плохая идея:
- Вы потеряете возможность настраивать каждый поддомен отдельно в пределах
Nginx и заставить много перенаправлений и переписывает для каждого клиента
подключение.
- Ваш SEO будет отстой.
- Как будут выглядеть ссылки на вашей странице?
Если у меня one.example.com, а у вас two.example.com, запросы будут:
example.com?subdomain=one
example.com?subdomain=two
Оба эти запроса теперь обрабатываются одной и той же индексной страницей на example.com. Вы действительно этого хотите?