Acessando hosts virtuais no sistema operacional host de um sistema operacional convidado no VirtualBox

2

Por meio do VirtualBox, preciso acessar os hosts virtuais do host (Mac OS X 10.6) por meio dos sistemas operacionais convidados (Windows XP e 7).

Consigo acessar a URL localhost e posso ver a estrutura de diretórios da pasta ~/Username/Sites dos sistemas operacionais convidados por meio do URL local do host, meu Mac, no navegador do convidado, mas recebo um erro 403 quando Eu tento ir mais fundo na estrutura do arquivo, por exemplo, mymacsname.lcoal/~Username/Sites está acessível, mas eu recebo um 403 quando eu navego para ymacsname.lcoal/~Username/Sites/somewebsite/ .

NB: Eu também recebo o 403 quando tento acessar ymacsname.lcoal/~Username/Sites/somewebsite/ do navegador do meu Mac (host).

Editar:

Eu verifiquei os logs de acesso no sistema operacional host (o Mac) e, estranhamente, se eu navegar para um diretório sem um arquivo .htaccess , recebo uma resposta "HTTP/1.1" 200 1935 e posso navegar no índice desse diretório ou estou servido é sua página da Web padrão. Se houver um arquivo .htaccess no diretório, receberei uma resposta "HTTP/1.1 403 247" !

Isso reduz muito do problema para o arquivo .htaccess , então vou continuar pesquisando sobre isso, estou muito grato por sua ajuda!

Re-Editar

Indo mais longe, parece ser um problema com as regras .htaccess do meu mod_rewrite . Eu incluí meu código .htaccess abaixo, parece, como deveria, que ele está redirecionando o navegador para /Users/Jay/Sites/chassis/library/bootstrap.php , mas parece que eu não tenho privilégios para acessar esse arquivo ( bootstrap.php ).

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{DOCUMENT_ROOT}/public/index.html !-f
RewriteRule ^$ library/bootstrap.php [L]

RewriteRule ^$ public/index.html [L]

RewriteRule ^([a-z0-9/-]+)$ library/bootstrap.php?url=$1 [L,QSA]

Chegando tão perto! Por favor me ajude a resolver isso!

Re-re-edite

Caso isso ajude, aqui está um clipe do meu arquivo de configuração principal do Apache ( /private/etc/apache2/httpd.conf ):

<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
    
por Jonathon David Oates 10.04.2011 / 19:58

2 respostas

1

Foi definitivamente um problema de permissões.

Resolvido adicionando:

<Directory />
    Options +FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

para /private/etc/apache2/extra/httpd-vhosts.conf .

Eu também precisava editar o arquivo hosts nos sistemas operacionais convidados (Windows XP e 7) da seguinte forma:

192.168.123.123 somevhost
192.168.123.123 someothervhost.dev

Onde o endereço IP indicado é o do sistema operacional host e somevhost … é o nome do host virtual no sistema operacional host.

Eu precisava definir o sistema operacional host para usar um IP estático, como se fosse atribuído pelo DHCP, você teria que editar o arquivo host no sistema operacional convidado sempre que o IP do sistema operacional do host fosse alterado.

Esses sites realmente ajudaram:

link

link

link

    
por 12.04.2011 / 03:22
1

Você pode querer começar verificando os logs de acesso do servidor da web para ver o que realmente está sendo passado para ele - ambos os sucessos versus falhas.

    
por 10.04.2011 / 23:41