Tengo un servidor ("myserver") que solo permite solicitudes al puerto 80 vía HTTPS. Otra limitación es que no puedo crear subdominios, por lo que tengo que seguir con "miservidor".
Ahora tengo dos aplicaciones: "frontend" ejecutándose en el puerto 8000 y "backend" en el puerto 9000. Lo ideal sería crear dos hosts virtuales: "frontend.myserver" y "backend.myserver" usando diferentes raíces de documentos, nombres de servidores, etc, pero como no es posible, creo que tendré que trabajar con rutas como "myserver/frontend" y "myserver/backend", por ejemplo.
¿Es posible hacer eso? ¿Sabes qué directiva de configuración me permitirá hacer eso? ¿Quizás usando la directiva alias?
Respuesta1
Sí, puede utilizar los subdominios con una sola dirección IP. En Apache, tendrás que configurar tus servidores virtuales.
Mira el primer ejemplo aquí:https://httpd.apache.org/docs/2.2/vhosts/examples.html
Tenga en cuenta que configura cada servidor virtual para cada sitio al que desea prestar servicio. Asegúrese de configurar cada uno de los siguientes:
- El oyente de cada servidor virtual como *:80
- El valor de DocumentRoot que apunta a sus directorios de contactos para cada sitio
El valor de ServerName para cada URL que desea servir
<VirtualHost *:80> DocumentRoot /www/frontendcontent ServerName frontend.myserver </VirtualHost> <VirtualHost *:80> DocumentRoot /www/backendcontent ServerName backend.myserver </VirtualHost>
Es posible que también necesite utilizar la directiva ServerAlias si desea que funcione algo como example.org y www.example.org. Para eso, agregaría ServerAlias tal como lo haría con la línea ServerName, pero especificaría el alias que desea que funcione para ese servidor virtual ServerName. Aquí está la documentación sobre ServerAlias, pero le sugiero que haga funcionar lo anterior y luego trabaje en ServerAlias si es necesario: http://httpd.apache.org/docs/2.2/mod/core.html#serveralias