как разместить приложение api и angular 5 в одном домене?

Я создал угловое приложение для внешнего интерфейса, которому для работы с базой данных нужен API-интерфейс остального бэкэнда, и я создал этот API-интерфейс для бэкэнда с laravel, и я обслуживаю каждый из них на отдельном порту в качестве отдельного домена, но мне нужно разместить их оба в том же домене, так что angular контролирует маршруты и существуют отдельные маршруты для бэкэнда, например, www.mydomain.com/anything — для углового приложения, а www.mydomain.com/api/anything — для бэкэнда laravel. так есть ли способ сделать это, и если есть, не могли бы вы упомянуть об этом или опубликовать ссылку на учебник для него?

-1

Решение

Для этого я бы рекомендовал использовать веб-сервер, такой как NGINX.

Корневой путь должен обслуживать ваше приложение Angular, и / api будет передаваться через прокси вашему API.

Если ваш API работает на том же сервере, что и исходные файлы вашего углового приложения, и на порте 3000, конфигурация сервера NGINX будет выглядеть примерно так:

server {
listen 80 default_server;

location / {
root /path/to/angular/app;
}

location /api {
proxy_pass http://localhost:3000;
}
}

Существует множество учебных пособий, касающихся обратных прокси с NGINX. Это пример одного: https://www.digitalocean.com/community/tutorials/understanding-nginx-http-proxying-load-balancing-buffering-and-caching

Кроме того, вы можете обратиться непосредственно к документации NGINX: http://nginx.org/en/docs/http/ngx_http_proxy_module.html

3

Другие решения

Других решений пока нет …