2
respostas

Sistema Angular e Spring para homologar

Temos uma VM na azure.

Gerei o build de homologação e coloquei no servidor.

Gerou os arquivos e o index.html assim

<!doctype html>
    <html lang="en">
    <head>
      <meta charset="utf-8">
      <title>DESIF</title>
      <base href="/">

      <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <link rel="icon" type="image/x-icon" href="favicon.ico">
    </head>
    <body>

      <app-root>Carregando ...</app-root>

    <script type="text/javascript" src="inline.bundle.js"></script><script type="text/javascript" src="polyfills.bundle.js"></script><script type="text/javascript" src="styles.bundle.js"></script><script type="text/javascript" src="vendor.bundle.js"></script><script type="text/javascript" src="main.bundle.js"></script></body>
    </html>

No servidor Tomcat. na pasta Program Files\Apache Software Foundation\Tomcat 8.5\webapps, criei a pasta dist.

Ao entrar com o endereço: http://endereco:8080/dist, ele vai a página correta, ao carregar muda o endereço para http://endereco:8080/#/login, o que é correto, mas imaginei que seria: http://endereco:8080/dist/#/login

Se aperto F5 ou CTRL + F5, ele vai para inicial do TOMCAT.

Tenho que configurar algo ?

No Angular, tenho um arquivo que tem o endereço do Servidor, no caso é *http://localhost:8080/sistema, para não ter que ficar mudando toda vez que subir para homologação, tem como o angular fazer isto automático, por alguma variável ?

Primeira vez que faço um deploy.

Existe alguma maneira melhor ?

2 respostas

Fala Guilherme, tudo bom? O angular sempre se baseia na raiz do sistema, para alterar isso, você teria que mexer no html e alterar a tag

para considerar o /dist

Acho que esse link pode ti ajudar também: https://shekhargulati.com/2017/07/06/angular-4-use-of-base-href-and-deploy-url-build-options/

Alterei o Html, esta parte de < base href="/"> para < base href="./">, e assim funcionou.

Mas tem alguma outra maneira que faço sem ter que ficar alterando o html ?

Tem como fazer uma variável para servidor de homologação, produção e desenvolvimento, pois os mesmos mudam, no angular ?