cómo definir múltiples raíces de documentos en apache

cómo definir múltiples raíces de documentos en apache

Utilizo la ruta relativa raíz para todos los enlaces en archivos PHP, como "url(/img/myimj.jpg)"

En el servidor host de Godaddy, eso funciona bien.

Pero quiero ejecutarlo en mi host local. (Ubuntu 9, Apache 2, PHP 5)

Por ejemplo, tengo mi sitio almacenado en var/www/siteone, otro almacenado en var/www/sitetwo,

y el directorio raíz está configurado en "var/www".

Ahora el problema es que href="/" no está vinculado a var/www/siteone, sino a var/www/.

¿Hay alguna manera de definir diferentes raíces de documentos para diferentes sitios?

Soy un principiante en desarrollo web y no estoy seguro de si Virtual Host puede hacerlo.

¿Alguien podría explicarlo?

Gracias por tus respuestas.

Necesito agregar un nuevo vitualhost a este archivo /etc/apache2/sites-available/default

Pero todavía estoy confuso, ¿cómo hacerlo para localhost? La IP y el puerto predeterminados son siempre 127.0.0.1:80

Respuesta1

Cada <VirtualHost>sección puede tener su propia DocumentRootdirectiva.

Respuesta2

Yo personalmente uso mucho VirtualDocumentRoot:
http://httpd.apache.org/docs/2.0/mod/mod_vhost_alias.html#virtualdocumentroot

Con esta directiva, puedes hacer por ejemplo:

VirtualDocumentRoot /var/www/%-2/%-3/

%-2 es el "segundo elemento desde la derecha", por lo que es un ejemplo en exemple.com.
%-3 es el tercer elemento desde la derecha, por lo que es foo en foo.exemple.com.

Luego solo tienes que crear carpetas que coincidan con tus nombres de host:
localhost/ será:

/var/www/localhost/_/

Observe el _ donde no hay valor (siempre hago un enlace simbólico como _ -> www)

Entonces
www.site1.com será /var/www/site1/www/
www.site2.com será /var/www/site2/www/
localhost será /var/www/localhost/_/

entonces diviértete con los enlaces simbólicos :-)

información relacionada