Como hospedar vários sites da caixa virtual da pilha de lâmpadas do Ubuntu

Como hospedar vários sites da caixa virtual da pilha de lâmpadas do Ubuntu

Estou bem perto de fazer o que quero, mas, infelizmente, a solução para o obstáculo final me escapa. Essencialmente, estou tentando chegar a uma posição em que possa hospedar vários sites em um vb e acessá-los usando um URL simples de qualquer máquina ...

Minha configuração:

Host do Windows 7 que contém uma entrada no arquivo hosts que diz: 192.168.0.30 laravel.dev Tenho uma reserva DHCP para este endereço, que a reserva para o endereço MAC exclusivo da minha caixa virtual

O Virtualbox está configurado com um adaptador de rede em ponte e modo promíscuo: permitir todos (não tenho certeza se isso é necessário). Não fiz alterações no arquivo hosts no sistema operacional convidado.

Eu criei um novo arquivo chamado laravel.dev em /etc/apache2/sites-availablechamado laravel.deve editei-o da seguinte forma:

<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>

Eu então habilitei (pensei) digitando sudo a2ensite laravel.deve reiniciando o apache

Situação atual:

Então, no momento, posso acessar pelo web root ( /var/www/) do host digitando http://laravel.dev/na minha barra de endereço e posso acessá-lo no navegador dos meus convidados digitandolocalhost

Posso acessar o arquivo de índice de meus projetos ( /var/www/laravel.dev/public/index.php) no host digitando http://laravel.dev/laravel.dev/publicna barra de endereço e posso acessá-lo no navegador de convidados digitandolocalhost/laravel.dev/public

O que eu quero

Tudo bem, mas o que eu gostaria é poder acessar a raiz do meu site ( /var/www/laravel.dev/public/index.php) simplesmente digitando laravel.dev na barra de endereço de qualquer máquina - Alguém pode explicar o que estou fazendo de errado aqui. Eu ficaria eternamente grato.

Informações adicionais solicitadas:

resultado de ls -l em /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

... prazer em fornecer qualquer outra informação que possa ajudar a resolver isso.

Além disso, além de instalar a pilha de lâmpadas. Eu realmente não fiz nada além do que está listado aqui - se não mencionei, provavelmente não fiz isso, então QUALQUER sugestão será apreciada. É seguro assumir que você está lidando com um novato em Linux... nenhuma ofensa será tomada.

Responder1

Duvido que o problema seja de DNS, embora questione se o arquivo que você criou está realmente sendo lido pelo Apache - a linha "DocumentRoot /var/www/laravel.dev/public/" deve ser suficiente para fazer isso funcionar.

[Na verdade, se isso é tudo que você está tentando fazer, você precisa da outra bobagem que você colocou? Caso contrário, tentaria remover este arquivo e modificar o DocumentRoot na configuração principal do Apache].

Se isso não resolver o seu problema, você pode fornecer o resultado de "ls -l /etc/apache2/sites-enabled", pois deve haver um link simbólico para sites-available/laravel.dev que pode estar faltando - se não , talvez precisemos descobrir se esse arquivo está sendo analisado e, se não, por que não.

Responder2

Você poderia tentar o tutorial que encontrei aqui. Parece explicar como fazer a configuração usando vhosts no Ubuntu. Ele também cobre o Arch Linux. Mas consegui descobrir qual era o meu problema depois de ler o tutorial, faltava um passo simples antes de segui-lo. Possivelmente você está passando pela mesma situação. http://www.adminempire.com/how-to-setup-v-host-on-apache/

Além disso, possivelmente, uma seção Alias ​​​​resolveria seu problema de como digitar o que você deseja e não precisaria incluir a parte localhost.

informação relacionada