Как заставить tomcat обслуживать статические файлы с сервера webpack? - PullRequest
0 голосов
/ 04 марта 2019

У нас есть сервер tomcat для API и сервер веб-пакетов для разработки веб-интерфейса.

Сервер tomcat обрабатывает аутентификацию и получает токен аутентификации от провайдера аутентификации.Этот токен также должен использоваться во всех запросах с моего сервера веб-пакетов.Нам не разрешено использовать localhost по соображениям безопасности.Поэтому мне нужен Tomcat для обслуживания статических файлов из веб-пакета.Я разобрался с проводкой для финальной сборки, которая помещает пакет js в файл войны.Но я не могу понять это для сервера разработки.

У нас нет httpd или nginx для обратного прокси.

Как я могу проксировать статические ресурсы в Tomcat для сервера webpack dev?Должен ли я добавить соединитель в server.xml или что-то в этом роде?

org.website.com / index.html -> locahost: 3000 / index.html

1 Ответ

0 голосов
/ 04 марта 2019

Итак, мы добавили nginx, и я понял это, добавив один блок сервера, который обрабатывает логику прокси для сервера tomcat и dev.Я могу обслуживать сервер разработки веб-пакетов из publicPath '/ dev /'.Таким образом, mydomain.com/ будет обслуживать index.html tomcat, а mydomain.com/dev - содержимое веб-пакета.Таким образом, я могу запросить бэкэнд tomcat api во время горячей перезагрузки на mydomain.com/dev.

server {
    listen 443 ssl;
    server_name mydomain.com;
    proxy_read_timeout 3500s;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_certificate ../cert/mydomain.cer;
    ssl_certificate_key ../cert/mydomain.key;
    root /usr/share/nginx/html;

    location /dev/ {
      proxy_pass https://localhost:3000;
      expires off;
    }

    location /sockjs-node/ {
        proxy_pass          https://localhost:3000;
      proxy_http_version  1.1;
        proxy_set_header    Upgrade $http_upgrade;
        proxy_set_header    Connection "upgrade";
      expires off;
    }

    location / {
      proxy_set_header Host $host:$server_port;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_redirect http:// https://;
      proxy_pass https://localhost:8443;
      proxy_http_version 1.1;
      proxy_request_buffering off;
      expires off;
    }

  }

Надеюсь, это кому-нибудь поможет.

...