Всем привет! В моем скрипте есть база с городами. Как сделать, чтобы URL ekb.domain.ru преобразовывался в domain.ru/?city=ekb , и чтобы мне для этого не нужно было вручную создавать поддомен в панели управления хостингом. Такое технически вообще возможно? Если для этого нужен VDS, то как это сделать на нём? Заранее благодарен!
даганяй ни даганяй. в скрипте ты можешь обратится к такой переменной: $_SERVER['HTTP_HOST'] если я ее конечно правильно написал, в ней хранится полный url куда перешел пользователь, по ней ты и можешь вычислять куда человек переходит и что ему надо и соответственно это и подключать.
да, правильно нет, урла в ней не хранится. емнип то в пхп вообще нет такой переменной которая будет отражать весь урл - его надо собирать из хттпс-хттп_хост-сервер_порт-реквест_ури. но в остальном ты суть уловил - получил хост, распрасил его, получил субдомен. можно конечно делать рерайт но лично я не вижу смысла нагружать веб-сервер рерайтером для извлечения переменной которую потом можно получить внутри пхп-машины. можно. настраивается example.com и *.example.com на одном виртуальном сервере (апача, энджинкса или какой там удобен). любой запрос будет обработан этим хостом. aaa.example.com или a.b.c.d.e.f.example.com - не важно. вайлдкард всосет всё в себя. а на стороне пхп мы смотрим две переменные - $_SERVER['SERVER_NAME'] будет всегда (если руки не из жопы) содержать example.com а $_SERVER['HTTP_HOST'] - уже с вариантами которые согласно задаче и нужно выцеплять в значение переменной.
можно. но нужно ли? это ж запуск рерайтера. плюс ну я извиняюсь но можно было бы предлагать не аксес а прямо в конфигурации хоста чтоб это было скомпилировано и не надо было включать оверрайд на который апач будет для каждого запроса искать аксесы в каждом каталоге на пути к цели. ну фу же столько оверхеда на такую простую операцию. и как бы вебсервер может случайно быть не апачем - что тогда? в общем вайлдкард домена и парсинга переменной на стороне пхп вполне достаточно.