Я хочу создать проект с полностью разделенными back-end (Laravel / Lumen) и front-end (Vue.js). Что является наиболее распространенным и лучшим методом для достижения этой цели?
1. domain.com + domain.com/api
2. domain.com + domain.com:port
3. domain.com + api.domain.com
4. other?
У любого из них есть плюсы и минусы?
Это зависит от множества факторов. Например, в Laravel вы можете просто создать группу маршрутов /api
. Опять же, если конфигурация и стек полностью отличаются от внешнего интерфейса, вы можете даже запустить его полностью на другом сервере, и в этом случае было бы проще разместить его в субдомене. Есть еще десятки подобных вещей, которые нужно учитывать в обоих случаях, и все сводится к контексту всего этого сценария. Я предлагаю просто провести много исследований в Интернете, потому что здесь сложно ответить на этот вопрос.
Если это будет классическое приложение REST, файлы, созданные Vue SPA в корневой / общедоступной папке, поэтому доступны напрямую через domain.com, Lumen API отдельно в подпапке api в папке поддоменов, поэтому доступны через поддомен api.domain.com
Не вижу плюсов и минусов. Просто установите для себя или своей команды стандарт, с которым вам хорошо.