Ce tutoriel m'a appris à créer un serveur Ubuntu (12.10, 64 bits) VM dans VirtualBox sous Windows 7 Ordinateur hôte, installez Apache et laissez-le servir un site à partir d'un domaine factice accessible via le navigateur de l'ordinateur hôte.
Cela a pris une journée et de nombreuses tentatives (bien que, apparemment, je suivais les instructions telles qu'elles étaient présentées, je faisais toujours quelque chose de mal) et je l'avais finalement fait.
Je trouve Ubuntu comme un environnement de développement beaucoup plus transparent que Windows et je voulais donc que cela soit la même chose sur Ubuntu. Donc, cette fois, j'ai créé un serveur Ubuntu VM dans VirtualBox sur une machine hôte Ubuntu , a installé Apache et l'a configuré. Mais lorsque j'accède au site via le domaine factice, j'obtiens l'erreur ' Serveur introuvable '.
Oui, j'ai modifié le fichier /etc/hosts
comme indiqué dans le le didacticiel (qui concerne Windows 7). Mais je ne pouvais pas le faire fonctionner. Je ne sais pas ce qui ne va pas. Quelqu'un sait ce que je devrais faire d'autre?
EDIT: Si je ne suis pas assez clair, demandez s'il vous plaît. Je suis disposé à clarifier.
Si vous devez autoriser d'autres machines de votre réseau physique à atteindre votre VM ou si la VM a besoin d'un accès à Internet, utilisez un réseau ponté. Sinon, restez sur le réseau uniquement hôte.
Arrêtez votre VM et ouvrez les paramètres correspondants dans le VirtualBox (OSE) Manager
Allez dans l'onglet Résea
Sélectionnez le mode réseau de votre choix (réseau ponté ou hôte uniquement)
Si vous souhaitez utiliser un réseau ponté, vous devez sélectionner la carte réseau appropriée en Nom: ____________ . Pour les connexions filaires, vous devez sélectionner un nom nommé eth0
. Les connexions sans fil sont généralement nommées wlan0
(les nombres peuvent varier).
Enregistrer les paramètres
Démarrer la machine virtuelle Ubuntu
Lorsque vous êtes opérationnel, vous pouvez collecter l'adresse IP en exécutant:
Sudo ifconfig
La sortie devrait ressembler à ceci:
eth0 Link encap:Ethernet HWaddr 08:00:27:f4:c3:7b
inet addr:192.168.1.4 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef4:c37b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:20 errors:0 dropped:0 overruns:0 frame:0
TX packets:25 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3244 (3.2 KB) TX bytes:2512 (2.5 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Dans la sortie ci-dessus, 192.168.1.4
(sur la deuxième ligne) est l'adresse IP qui peut être utilisée dans votre système hôte Ubuntu pour accéder à votre machine virtuelle.
Ouvrez maintenant le fichier hôtes sur la machine hôte Ubuntu:
Sudo gedit /etc/hosts
(Si vous ne souhaitez pas utiliser gedit
name__, remplacez le mot par le nom de votre éditeur favori. Exemple: vim
name__, nano
name__.)
Une fois le fichier ouvert, ajoutez cette ligne et enregistrez :
192.168.1.4 my-dummy-site.com
Ouvrez n’importe quel navigateur sur votre ordinateur hôte et accédez à my-dummy-site.com
pour accéder à votre site Web, directement depuis VirtualBox.
(Un merci spécial à @ iSeth pour l'aide . Entièrement basé sur cette réponse , le bit n'est PAS le même.)
Seul root
peut ouvrir les ports <1024. Par conséquent, si un utilisateur normal exécute VirtualBox, il n'ouvrira pas le port 80 sur l'hôte et ne le transférera pas à l'invité.
Vous pouvez autoriser des programmes à ouvrir des ports privilégiés en exécutant:
setcap 'cap_net_bind_service=+ep' /path/to/executable
Je ne connais pas le chemin d'accès à l'exécutable VirtualBox
name__, mais vous pouvez facilement le trouver en recherchant quelque chose de similaire à "VirtualBox" dans la sortie de ps auxf
.