Вы можете сделать это с PHP, но это немного перебор, если это то, что происходит на каждом запросе , Если это что-то для балансировки нагрузки, в SAPI есть лучшие решения, такие как nginx
.
В противном случае я бы рекомендовал написать очень простое приложение Node.js, которое работает как прокси-сервер перед вашим приложением. Прокси-приложение должно запрашивать базу данных в памяти, такую как Redis или даже базу данных MySQL MEMORY. Вы не хотите ждать на диске чтения для переадресации. Это позволит вашему основному приложению (PHP App) писать любые значения, необходимые для определения маршрутизации поддоменов в базу данных в памяти, а простые Node.js будут запрашивать базу данных и либо поставлять 301
/302
, либо фактически выполнять при необходимости, в внутренней трубе.
[SAPI (Nginx, Apache, etc)] --- [Node.js Proxy] --- (if x) --- [PHP domain.com]
| `-- (if y) --- [301 to PHP sud.domain.com]
| Query DB |
| Write DB |
[Redis DB]-------------------------------
Что здесь зависит от базы данных? – anubhava
Итак, если у меня есть таблица, называемая сайтами в базе данных, и поле, называемое доменом сайта, тогда домен может быть sub.domain.com или domain2.com, а затем, если возможно, перенаправить на определенную папку/страницу. Надеюсь, это имеет смысл. Я пытаюсь сформулировать это простым способом, и контент будет отличаться в зависимости от ценности. – Siriuo
Но правило перезаписи не может запрашивать какую-либо базу данных. – anubhava