[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)

DUVIDA CONFIGURAÇÃO DOCKER , LARAVEL COM SUBDIRETORIO

[Finalizado Pelo Aluno]

GUSTAVO  MARINHO
Criador GUSTAVO MARINHO 10/04/2023

Bom dia , tenho um cenário com a seguinte situação: estou montando um servidor de homologação  onde preciso rodar nele vários sistemas  , porém tenho uma limitação de possuir apenas 1 domínio e sem possibilidade de criação de subdomínio ( restrições de infra ).

Então preciso rodar os sistemas em subdiretórios exemplo : homolog.com.br/sistema01 , homolog.com.br/sistema02 

 

porém identifiquei que o laravel não se comporta muito bem com este tipo de configuração , ou da problema em rotas ou não acha o js ou css, ele sempre espera ser o root  tipo homolog.com.br ou app.homolog.com.br , não trabalha muito bem com o /nomeDoSistema

 

Alguém teria uma solução ?   minha infra estar em docker usando nginx como proxy reverso  

Manager Carlos Ferreira 10/04/2023

Olá, Gustavo!
Tudo bem?

O bom seria realmente trabalhar com subdomínios, o ideal mesmo seria rodar cada aplicação de forma isolada rsrs

Mas enfim, desafios assim fazem parte da nossa rotina de devs.

--

Tem como deixar cada aplicação em um diretório separado, e acessar /nome-aplicação

Me descreva este servidor por favor?
É servidor Linux?
Está usando o nginx? É com ele que você vai conseguir resolver tudo isso.

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

Servidor host linux 

ai tenho docker instalado cada sistema em 1 container diferente

 

porem so tenho 1 dns que aponta para o servidor host linux 

 

ai por isso preciso acessar o sistemas  da seguinte forma

 

exemplo: homolog.com.br/sistema01 ( que vai para o meu container 01 )

homolog.com.br/sistema02 ( que vai para o meu container 02 ) etc

 

tambem tenho um nginx instalado em um container para fazer este proxy 

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Você precisa instalar o Nginx neste servidor, e criar um proxy pass que vai direcionar as requisições cada uma para uma porta.

location /app-01 {
    proxy_pass http://localhost:8080;
}

Ao acessar a /app-01 vai direcionar para a aplicação Laravel que está na porta 8080

Pegou a ideia amigo?

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

Peguei esta ideia porem ao fazer desta forma o css do laravel não carrega, quando vou no codigo fonte da pagina utilizando o ctr+u do navegador o laravel esta tentando carregar o codigo sem o /app-01 o que não acha o arquivo quebrando todo , as rotas se perde dando o erro 404 not found.

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Essas questões de assets realmente são um problemão nesse cenário.

Mesmo informando no arquivo .env a URL para seudomínio.com.br/app-01 não deu certo?

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

Sim mesmo colocando no env a url correta não resolve

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Como está a URL dos seus assets? Pegou a configuração do arquivo .env?

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

Era pra ta pegando do .env , inclusive peguei o projeto do curso que tem aqui do laravel 8 ( o free mesmo ) e tentei fazer este config e não funcionou 

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

O pior é que helper url() pega a url do contexto da aplicação, no seu caso deve estar http://localhost:8080

Sem chances de usar subdomínio?
Porque essa forma como fez funciona, mas só para APIs;

Carlos Ferreira
Manager Carlos Ferreira 10/04/2023

Tenta assim amigo, cria essa variável de ambiente e passa a URL dos seus assets:
ASSET_URL=homolog.com.br/app-01

Carlos Ferreira
Manager Carlos Ferreira 10/04/2023

Fico no aguardo amigo.

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

no momento não tenho como usar subdominio , irei testar o ASSET_URL e te retorno 

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Beleza, no aguardo.

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

Ainda sem funcionar , acredito que so subdomínio mesmo 

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Nenhum resultado na URL dos assets (CTRL+u)?

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

A url muda porem quebra as rotas e no ctrl+u a url fica http://(homolog.com.br/app01) achei bem estranho os ( ) esta aparecendo 

GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Está no caminho certo.

Ou o asset ficou errado no arquivo .env (me mostra por favor), ou no seu .blade está sobrando esse ()

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023
APP_URL=homolog.com.br/app01
ASSET_URL=homolog.com.br/app01
GUSTAVO  MARINHO
Manager Carlos Ferreira 10/04/2023

Informa a URL full:
ASSET_URL=http://homolog.com.br/app01

Carlos Ferreira
Criador GUSTAVO MARINHO 10/04/2023

desta forma ao tentar acessar a aplicação aparece a pagina do laravel  - 404 NOT FOUND 

GUSTAVO  MARINHO
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!