Author Topic: [Solucionando] Dominios virtuales en Ebox 1.2  (Read 3050 times)

dfjcap

  • Zen Apprentice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
[Solucionando] Dominios virtuales en Ebox 1.2
« on: February 18, 2010, 04:57:51 pm »
Hola a todos,

Soy nuevo en Ebox, lo tengo instalado desde hace solo 2 meses.

Lo que quiero hacer es lo siguiente:

1- Tengo un directorio que se llama /home/webs/ , lo tengo en otra partición y el home está montado en ella. No quiero tener las webs en /var/www por temas de seguridad y posibles reinstalaciones. Y no puedo rehacer la instalción y meter el /var en otra partición.
2- Quiero tener dentro de ese directorio varios virtual host.
3- Que los diferentes virtual host puedan ejecutar cgis en /home/web/cgi-bin/
4- por supuesto que los virtual host puedan ejecutar cgis própios y que no sean servidos vía web. Vamos que dispongan de su propio virtualhost/cgi-bin/

Lo he intentado a mano, editando apache2, y veo que ebox tiene plantillas y no lo hace como yo quiero. Me lo sigue creando en /var/www/virtual.....

Un saludo a todos y esperos vuestras respuestas como agua de Mayo. Llevo unos días y no soy capaz.


« Last Edit: February 22, 2010, 11:51:15 am by dfjcap »

dfjcap

  • Zen Apprentice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Re: [Solucionando] Dominios virtuales en Ebox 1.2
« Reply #1 on: February 22, 2010, 11:58:30 am »
Bueno me contesto a mi mismo por si a alguien se le ocurre algo parecido a lo que yo he hecho.

Después de darle unas cuantas vueltas más y consultando la zona de Developers, la solución que he encontrado (Aunque seguro que no es la más elegante), es la siguiente:

$ sudo vi /usr/share/ebox/stubs/webserver/vhost.mas

Y sustituimos la siguiente línea:
DocumentRoot <% $docRoot %>/<% $vHostName %>
Por esta otra:
DocumentRoot DIRECTORIO_DESEADO <% $vHostName %>
Ejemplo:
DocumentRoot /home/midirectorio/webs/ <% $vHostName %>


Y posteriormente:

$ sudo vi /usr/share/perl5/Ebox/WebServer.pm
Y sustituimos la línea:
my $dir = EBox::WebServer::PlatformPath::DocumentRoot()
Por la siguiente, indicándole el directorio que hemos definido anteriormente:
my $dir = DIRECTORIO_DESEADO
Siguiendo el ejemplo:
my $dir = "/home/midirectorio/webs"


De esta manera ya Ebox puede crear las webs en el directorio que nosotros queramos.

Para los desarrolladores del proyecto, sería una idea bastante interesante que en posteriores versiones de Ebox, esto fuera posible, porque a priori parece sencillo (visto desde fuera y desconociendo el resto del código)

Un saludo para todo el mundo y espero que le sea útil a alguien.

« Last Edit: February 22, 2010, 12:10:10 pm by dfjcap »

sixstone

  • Zentyal Staff
  • Zen Hero
  • *****
  • Posts: 1417
  • Karma: +26/-0
    • View Profile
    • Sixstone's blog
Re: [Solucionando] Dominios virtuales en Ebox 1.2
« Reply #2 on: February 22, 2010, 02:49:07 pm »
Hola.

Gracias por el aporte. Yo creo que es mucho más sencillo crear un enlace simbólico de /var/www a /home/web o cambiar lo que devuelve el método  EBox::WebServer::PlatformPath::DocumentRoot.

Un saludo.
My secret is my silence...