2012-08-07 25 views
10

que estoy tratando de hacer una instalación para que pueda acceder a mi página web en un host virtual en el equipo A desde el ordenador B. Ambos A y B están en la misma red. Estoy usando xampp en Win 7.Acceso a la máquina virtual de ordenador en misma red local

Así que aquí está el problema es que el equipo A (servidor) tiene una configuración de host virtual como la siguiente en el archivo httpd-vhosts.conf.

NameVirtualHost project:81 

<VirtualHost project:81> 

    DocumentRoot "D:/work/website" 
    ServerName project:81 
    <Directory "D:/work/website"> 
    Options Indexes FollowSymLinks Includes ExecCGI  
    AllowOverride All 
    Order Allow,Deny 
    Allow from all 
    </Directory> 
</VirtualHost> 

(utilizando el puerto 81 como el puerto 80 tiene que ejecuta IIS, no saben mucho sobre estas cosas sin embargo)

esta configuración funciona bien en la máquina local (servidor). Es decir: 81 en la barra de direcciones del navegador abre el sitio web como debería.

ahora en el equipo B (cliente) He cambiado el archivo hosts para contener la IP del servidor junto con el nombre del host virtual como: -

proyecto 192.168.1.7

ahora cuando ingreso al proyecto: 81 en el navegador del cliente ... me lleva al servidor pero no me lleva al directorio de host virtual, sino que lleva al directorio predeterminado ... es decir, en mi caso es

C: \ xampp \ htdocs

Ahora estoy atascado y no puedo hacer que el cliente apunte al destino actual. Entonces, ¿alguien puede sugerir qué estoy haciendo mal aquí o algo más que tengo que hacer para tener acceso al sitio de host virtual correcto desde la máquina del cliente?

Gracias de antemano por cualquier ayuda

Respuesta

16

respuesta Ok Así Seto El de Kahfi a mi muy vieja pregunta me llevó a hacer más investigación y la lectura en el sitio web de Apache.

Así que lo que tengo es esta, mi directiva NameVirtualHost era inadecuada. Así En lugar de esto,

NameVirtualHost project:81 

<VirtualHost project:81> 

    DocumentRoot "D:/work/website" 
    ServerName project:81 
    <Directory "D:/work/website"> 
    Options Indexes FollowSymLinks Includes ExecCGI  
    AllowOverride All 
    Order Allow,Deny 
    Allow from all 
    </Directory> 
</VirtualHost> 

Lo que tenía que hacer era esto.

NameVirtualHost *:81 

<VirtualHost *:81> 

    DocumentRoot "D:/work/website" 
    ServerName project 
    <Directory "D:/work/website"> 
    Options Indexes FollowSymLinks Includes ExecCGI  
    AllowOverride All 
    Order Allow,Deny 
    Allow from all 
    </Directory> 
</VirtualHost> 

Aviso el '*', podría haber utilizado una dirección IP allí también. (En este caso de mi servidor (equipo A) IP local) tanto trabajo. Ahora todo lo que tenía que hacer es introducir "proyecto: 81" en la máquina cliente, y me sale lo que mis ojos deseaban ver .. :)

Pocas cosas que obtuve de esto.

1) Cómo usar NameVirtualHost (o cuál es su propósito básicamente).Leer más aquí http://httpd.apache.org/docs/2.2/mod/core.html#namevirtualhost Este también es bueno http://www.thegeekstuff.com/2011/07/apache-virtual-host/

2) Se puede utilizar esta vía línea de comando:

httpd -D DUMP_VHOSTS 

saber cómo sus máquinas virtuales son de configuración (también le dará algunas advertencias con respecto a la precedencia si hay algún problema con su configuración)

3) El gesto de otro para ayudarlo a usted mismo ... :) Así que sigue ayudando y meciéndose.

2

Haga que intenta incluir el puerto en el archivo de su máquina cliente?

192.168.1.7:81 proyecto

+0

Gracias por la respuesta ... :) ... Desafortunadamente eso tampoco funciona – codisfy

+0

contento de saber que encuentras la solución, así que puedo referirme a esta pregunta cuando tengo el mismo problema, me encanta esta comunidad;) –

+3

¡No puede incluir números de puerto en el archivo de host! –

Cuestiones relacionadas