Apache - Dirección interna web

   
Vista:

Dirección interna web

Publicado por Julián (3 intervenciones) el 13/11/2017 11:12:45
Hola a todos.

Llevo un tiempo buscando información sobre este tema, pero no encuentro nada.
Tengo un servidor en el que tengo instalado GLAMP con GNU/Linux en local.
En él tengo unos cuantos proyectos escritos en PHP. Para acceder al servidor es tan sencillo como insertar la IP, y si queremos ir a un proyecto en concreto "IP:nombre_carpeta_proyecto".

Bien, lo que me gustaría es que los usuarios accedieran a cada proyecto mediante una dirección tal como "ejemplo.com". Lo que tengo "claro" es que debo crear VirtualHost por cada proyecto, y en el servidor cambiar el archivo hosts para añadir el nombre del dominio. Lo que me gustaría es que los usuarios accedieran al proyecto sin necesidad de cambiar en cada equipo el hosts para que acceda por nombre y no por IP.
¿Cómo podría hacer eso?.

También tengo otra duda. Si tengo un proyecto con Django, el cual también usa el puerto 80, ¿cómo hago para que no "colisione" con los otros proyectos?.

¡Muchas gracias!

Ojalá pudierais ayudarme.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Dirección interna web

Publicado por xve (270 intervenciones) el 13/11/2017 12:23:13
Hola Julian, para solucionar el problema que comentas, tienes que montar un servidor DNS local, donde definas todos los dominios locales.

También tendrás que modificar el servidor DHCP para que de como primer servior DNS el tuyo local.

De esta manera, cualquier usuario de la red, podra llegar a tus dominios sin tener que modificar el archivo hosts
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Dirección interna web

Publicado por Julián (3 intervenciones) el 13/11/2017 12:30:58
Gracias xve.

Una pregunta más :P

Supongamos que tengo dos proyectos, "proy1" y "proy2". Para acceder a ellos IP:proyecto.
Si creo dos virtualhost.
<VirtualHost proy1.dev:80>
DocumentRoot /var/www/html/proy1
</VirtualHost>
<VirtualHost proy2.dev:80>
DocumentRoot /var/www/html/proy1
</VirtualHost>

Ambos tienen el mismo puerto, por lo que al acceder desde fuera del propio servidor, sólo se muestra uno al acceder a la IP del servidor. ¿Cómo hacer para acceder a ambos si tengo los dos virtualhost activados?. Si cambio el puerto funciona bien, pero claro, quiero mantener el puerto en ambos.
Por ejemplo en Django no utiliza una carpeta de /var/www, por lo que si pongo el puerto 80 para este virtualhost sólo se muestra este. ¿Cómo puedo hacer para acceder a un proyecto django y otro php en un mismo server?.

¡Mil gracias!
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Dirección interna web

Publicado por xve (270 intervenciones) el 13/11/2017 14:12:50
En el código de ejemplo que me has puesto, los dos dominios van a la misma carpeta en DocumentRoot!! Tendrás que poner cada uno en una carpeta diferente, no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Dirección interna web

Publicado por Julián (3 intervenciones) el 13/11/2017 15:02:36
Sí, perdona, lo he escrito de ejemplo. Sería DocumentRoot /var/www/html/proy2.
¿Cómo accedería a proy1.dev desde otra máquina?. ¿Sólamente cambiando el hosts al cliente y/o con DNS del servidor o hay otra manera?

Gracias.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Dirección interna web

Publicado por xve (270 intervenciones) el 13/11/2017 18:39:55
Yo configuro el virtual host diferente...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<VirtualHost *:80>
    ServerName proy1.dev
 
    DocumentRoot /var/www/html/proy1/
 
    <Directory /var/www/html/proy1>
        Options Indexes FollowSymLinks Includes
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>
 
<VirtualHost *:80>
    ServerName proy2.dev
 
    DocumentRoot /var/www/html/proy2/
 
    <Directory /var/www/html/proy2>
        Options Indexes FollowSymLinks Includes
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

Haber si te sirve...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad