ok, esta tarea debería ser simple pero no puedo hacer que funcione. Me gustaría tener una subcarpeta después de mi nombre de dominio (en realidad después de la IP de ese nombre de dominio), que redirige a un puerto específico en el mismo servidor. Esencialmente, quiero deshacerme de tener que usar muchos puertos.
Aquí está mi configuración nginx para eso
server {
listen 80;
index index.html index.htm index.nginx-debian.html index.php;
server_name aaa.bbb.ccc.ddd;
location ^~ /app2 {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://aaa.bbb.ccc.ddd:8001;
}
}
Entonces, al acceder a aaa.bbb.ccc.ddd / app2, me gustaría que esto se resuelva en http: //aaa.bbb.ccc.ddd: 8001 .
Esto puede ser posiblemente muy complicado. ¿Que me estoy perdiendo aqui?
Gracias Pat
Respuestas:
Dado que etiquetó esto como una pregunta de proxy inverso, supongo que quiere decir que desea proxy de la solicitud para que el usuario solo vea la
http://aaa.bbb.ccc.ddd/app2
URL en su navegador.Puedes cambiar tu
location
bloqueo a esto:Aquí capturamos la parte URI después
/app2
de$1
variable y la usamos en laproxy_pass
directiva.fuente
aaa.bbb.ccc.ddd:8001
página? Lo más probable es que necesite corregir las URL para contener la/app2
parte.