Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

942
Visualizações
Nginx y Angular Routing (no se pueden encontrar archivos .js)

Nos encontramos con un problema al mostrar correctamente las páginas de las rutas de Angular servidas con Nginx. En nuestro proyecto Angular, nuestro href base es "/dashboard". El proyecto tiene dos rutas diferentes que apuntan a "/dashboard/data-analysis" y "/dashboard/data-visual".

Aquí está mi archivo nginx.conf básico:

 server{ listen 80; server_name localhost; location /dashboard/ { alias C:/Users/C123/Desktop/html/dashboard; index index.html; try_files $url $url/ /dashboard/index.html; } }

Cuando entro en "localhost/dashboard/" o "localhost/dashboard/data-analysis", cualquiera de las páginas cargará index.html desde "C:/Users/C123/Desktop/html/dashboard/", pero luego fallará cargue "polyfill.js" "runtime.js" "style.js", etc. como se define en la etiqueta <script> de index.html.

Además, Nginx intenta cargar esos archivos desde "C:/Users/C123/nginx/nginx-1.16.1/html/" en lugar de mi alias (C:/Users/C123/Desktop/html/dashboard).

¿Hay alguna forma en que pueda definir dentro del bloque de ubicación "dashboard/" donde leerá todo desde el index.html de mi alias? No quiero definir la raíz afuera, o un bloque de ubicación secundario solo para archivos ".js".

ACTUALIZAR (esta solución funcionó para mí):

 server{ listen 80; server_name localhost; location /dashboard/ { root C:/Users/C123/Desktop/html/ try_files $uri $uri/ /dashboard/index.html/ }
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Probablemente podría establecer baseHref y desplegarUrl en angular.json. Puede configurarlo en proyectos -> $ nombre del proyecto -> arquitecto -> construir -> opciones.

 "deployUrl": "/dashboard/", "baseHref": "/dashboard/",

Consulte la respuesta para obtener más contexto sobre para qué sirven estos parámetros.

over 4 years ago · Santiago Trujillo Relatório

0

Te falta la directiva root .

Además, try_files debería intentar cargar el archivo indicado, o el index.html en el directorio.

No probado, pero debería funcionar:

 server { listen 80; server_name localhost; location /dashboard/ { root C:/Users/C123/Desktop/html; try_files $uri $uri/index.html =404; } }

Editar:

Si está intentando acceder a los archivos en el directorio del dashboard sin especificar la palabra dashboard en su solicitud, puede agregar un bloque para que esto sea una alternativa.

 server { listen 80; server_name localhost; # this will serve requests like http://localhost/runtime.js location / { root C:/Users/C123/Desktop/html/dashboard; try_files $uri $uri/index.html =404; } # this will serve requests like http://localhost/dashboard/ location /dashboard/ { root C:/Users/C123/Desktop/html; try_files $uri $uri/index.html =404; } }

Tenga en cuenta que cuando NGINX elige el contexto de ubicación, tomará la coincidencia más larga de las ubicaciones prefijadas mencionadas.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda