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

321
Visualizações
Archivo de configuración NGINX para la arquitectura de subcarpetas de microservicios

Tenga paciencia conmigo, ya que no tengo mucha experiencia en la configuración de Nginx.

Quiero crear microservicios como subcarpetas. por ejemplo: www.ejemplo.com/usuarios

USUARIOS es el microservicio, por lo que USUARIOS también será el nombre de la subcarpeta.

El sitio web se puede alojar en /var/www/html/ o /var/www/html/example.com/public_html (suponiendo que este sea para esta pregunta)

Entonces, dentro de la carpeta principal, /var/www/html/example.com/public_html, hay muchas carpetas, cada una de las cuales representa un microservicio.

 /var/www/html/example.com/public_html/users/ /var/www/html/example.com/public_html/students/ /var/www/html/example.com/public_html/teachers/ /var/www/html/example.com/public_html/parents/

Cada microservicio tendrá una carpeta más reciente que contiene el código que se ejecutará.

 /var/www/html/example.com/public_html/users/latest/

Cada carpeta más reciente tiene 2 carpetas: APLICACIÓN que contiene el código de interfaz de usuario de SPA y API que contiene el código de API

 /var/www/html/example.com/public_html/users/latest/app/ /var/www/html/example.com/public_html/users/latest/api/

Me gustaría agregar y eliminar carpetas según sea necesario sin realizar cambios en el archivo de configuración de Nginx. Si la carpeta existe, me gustaría que se muestre el código front-end relevante. más 404

Soy consciente de que puedo agregar las carpetas según sea necesario en la ubicación de Nginx, pero eso no es lo que quiero.

(NO QUIERO HACER EL CÓDIGO ABAJO)

 location /users { alias /var/www/html/example.com/public_html/users/latest/app } location /api/users { alias /var/www/html/example.com/public_html/users/latest/api }

Estoy tratando de averiguar si puedo configurar NGINX para que apunte a la carpeta relevante según la URL.

Esto es lo que tengo hasta ahora, pero solo se muestra como 404 para todo lo que estoy intentando. Estoy trabajando para escribir la API en Go-lang, pero como tengo experiencia en el uso de PHP, tomaré esa ruta primero antes de cambiar a Go.

 server { listen 80; listen [::]:80; server_name _; root /var/www/html/example.com/public_html; index index.html; location ^/<service>/<additional-optional-parameters-can-go-here>$ { root /var/www/html/example.com/public_html/<service>/latest/app; try_files $uri $uri/ =404 } location ^/api/<service>/<additional-optional-parameters-can-go-here>$ { root /var/www/html/example.com/public_html/<service>/latest/api; try_files $uri $uri/ =404 location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; } } location ~ /\.ht { deny all; } }

ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Creo que puedes usar expresiones regulares en la ubicación y las líneas del servidor.

Tal vez eso ayude

 server_name ~^(?<subdomain>.+)\.domain\.tdl$ ~^(?<subdomain>.+)\.domain2\.tdl$ domain.tdl domain2.tdl; location ~ ^/sitename/[0-9a-z]+/index.php$ { fastcgi_pass phpcgi; } location ~ \.php$ { return 404; } location ~ ^/a/b/(?<myvar>[a-zA-Z]+) { # use variable $myvar here if ($myvar = "sth") { ... } } # Example using the subdomain var created in last steps sub_filter_once off; sub_filter 'Site Text' '$subdomain'; sub_filter 'Site Text' '$myvar';

Personalmente, me gusta crear diferentes archivos conf para cada servicio, luego emitir una "recarga de nginx de servicio". Quizás también podría automatizar la generación de archivos conf.

over 4 years ago · Santiago Trujillo Relatório

0

En caso de que alguien más esté intentando un enfoque similar. Entré en Freelancer.com y contraté a alguien para que me ayudara.

 location ~ ^/api/([az]+)/.*?$ { alias $folder_path/$1/$api_path; rewrite ^/api/([az]+)/.*?$ /$1/$api_path last; } location ~ ^/([az]+)/(?:(?!\blatest\b).)*$ { alias $folder_path/$1/$app_path; rewrite ^/([az]+)/(?:(?!\blatest\b).)*$ /$1/$app_path last; }
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