Назад | Перейти на главную страницу

Nginx и Tomcat для приложений Spring и Angular

У меня есть загрузка Spring и приложение Angular в контейнере Tomcat, развернутое на сервере. Он отлично работает на localhost.

Теперь я пытаюсь сопоставить свой домен с приложением.

Когда я вызываю свой домен, вызовы API из Angular в Spring не выполняются.
Поскольку они находятся на одном сервере, я использую localhost для вызова API с angular на spring.
Что работает в моем браузере сервера, но не где-то еще, и мне ясно, почему он не работает.

Но я не совсем уверен, как это обойти.

Вот моя конфигурация nginx:

   server {
        listen       80;
        server_name localhost mydomain mydomain;

        
        #access_log  logs/host.access.log  main;

        location {
            root   html;
         proxy_pass      http://mydomain:8080;
            index  index.html index.htm;
        }       
    }

Конфигурация Tomcat:

 <Host name="mydomain"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Alias>mydomain</Alias>
        <Valve className="org.apache.catalina.valves.rewrite.RewriteValve" />   
</Host>

Мои вопросы:

Я попытался proxy_pass так как http://mydomain:8080/myapp & http://localhost:8080/myapp но все равно безуспешно.

Мы будем очень признательны за любые указатели на оба этих вопроса.
Я здесь для любой информации.

URL-адрес вашего Angular приложение, используемое для вызова API, должно настраиваться или обнаруживаться автоматически. Итак, вы можете использовать:

  1. глобальный JavaScript расположение объект или
  2. аналогичный объект на стороне сервера, например HttpServletRequest # getRequestURL (), который вам нужно будет отправить в приложение Angular (например, в <script> тег).

Использование IP-адреса сервера допустимо, но лучшим решением является использование доменного имени, которое указывает на этот адрес.

В вашей установке Tomcat, вероятно, есть ROOT приложение, которое перенаправляет на приложение Tomcat Manager. Вы должны очистить его, если не используете (удалите все файлы, оставьте каталог).

,