Cómo alojar varios sitios desde la pila de lámparas de Ubuntu de caja virtual

Cómo alojar varios sitios desde la pila de lámparas de Ubuntu de caja virtual

Estoy bastante cerca de hacer lo que quiero, pero, por desgracia, la solución al último obstáculo se me escapa. Básicamente, estoy tratando de llegar a una posición en la que pueda alojar varios sitios en un vb y acceder a ellos usando una URL simple desde cualquier máquina...

Mi configuración:

Host de Windows 7 que contiene una entrada en el archivo de hosts que dice: 192.168.0.30 laravel.dev Tengo una reserva DHCP para esta dirección, que la reserva para la dirección mac única de mi virtualbox

Virtualbox está configurado con un adaptador de red en puente y un modo promiscuo: permitir todo (no estoy seguro si esto es necesario). No he realizado cambios en el archivo de hosts en el sistema operativo invitado.

Creé un nuevo archivo llamado laravel.dev en /etc/apache2/sites-availableCall laravel.devy lo edité de la siguiente manera:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName *.laravel.dev
    DocumentRoot /var/www/laravel.dev/public/
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/laravel.dev/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/laravel_error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/laravel_access.log combined
</VirtualHost>

Luego lo habilité (pensé) escribiendo sudo a2ensite laravel.devy reiniciando Apache

Situación actual:

Entonces, en este momento puedo acceder mediante la raíz web ( /var/www/) desde el host escribiendo http://laravel.dev/en mi barra de direcciones y puedo acceder desde el navegador de mi invitado escribiendolocalhost

Puedo acceder al archivo de índice de mis proyectos ( /var/www/laravel.dev/public/index.php) desde el host escribiendo http://laravel.dev/laravel.dev/publicen mi barra de direcciones y puedo acceder a él desde el navegador de mi invitado escribiendolocalhost/laravel.dev/public

Lo que quiero

Esto está bien, pero lo que me gustaría es poder acceder a la raíz de mi sitio ( /var/www/laravel.dev/public/index.php) simplemente escribiendo laravel.dev en la barra de direcciones de cualquiera de las máquinas. ¿Alguien puede explicar qué estoy haciendo mal aquí? Yo estaría eternamente agradecido.

Información adicional solicitada:

resultado de ls -l en /etc/apache2/sites-enabled/

total 0
lrwxrwxrwx 1 root root 26 Feb 26 17:16 000-default -> ../sites-available/default
lrwxrwxrwx 1 root root 30 Feb 26 18:27 laravel.dev -> ../sites-available/laravel.dev

...estaremos encantados de proporcionar cualquier otra información que pueda ayudar a resolver este problema.

Además, aparte de instalar la pila de lámparas. Realmente no he hecho nada más que lo que se enumera aquí; si no lo he mencionado, probablemente no lo haya hecho, por lo que se agradece CUALQUIER sugerencia. Es seguro asumir que estás tratando con un novato de Linux... no te ofenderás.

Respuesta1

Dudo que el problema sea un problema de DNS, aunque me pregunto si Apache realmente está leyendo el archivo que ha creado; la línea "DocumentRoot /var/www/laravel.dev/public/" debería ser suficiente para que funcione.

[De hecho, si esto es todo lo que intentas hacer, ¿necesitas las otras tonterías que has puesto? De lo contrario, intentaría eliminar este archivo y modificar DocumentRoot en la configuración principal de Apache].

Si esto no resuelve su problema, ¿puede proporcionar el resultado de "ls -l /etc/apache2/sites-enabled" ya que debería haber un enlace simbólico a sites-available/laravel.dev que puede faltar, si no? , es posible que necesitemos averiguar si este archivo se está analizando y, en caso contrario, por qué no.

Respuesta2

Puedes probar el tutorial que encontré aquí. Parece dar un resumen de cómo configurar usando vhosts en Ubuntu. También cubre Arch Linux. Pero pude descubrir cuál era mi problema después de leer el tutorial; me faltaba un paso simple antes de seguirlo. Posiblemente te estés encontrando con la misma situación. http://www.adminempire.com/how-to-setup-v-host-on-apache/

También es posible que una sección de Alias ​​resuelva su problema sobre cómo escribir lo que desea y no tener que incluir la parte del host local.

información relacionada