Je suis nouveau sur Mac mais utilise Ubuntu depuis longtemps pour le développement. Je sais comment créer des hôtes virtuels dans Ubuntu mais je n’ai aucune idée de Mac. J'ai créé une entrée hosts
comme ci-dessous:
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost mysite.loc
255.255.255.255 broadcasthost
::1 localhost
Mais que faire ensuite?
Lors de la recherche sur Google, j'ai trouvé ces étapes pour créer facilement des hôtes virtuels sur MAMP:
Ouvrez votre console sous mac et éditez votre fichier hosts comme ceci
Sudo vim/etc/hosts
Cela ouvre un fichier système contenant la ligne suivante:
127.0.0.1 localhost
ajoutez votre nom d'hôte souhaité après l'hôte local:
127.0.0.1 localhost mysite.loc
appuyez sur ESC, puis: wq! pour écraser et fermer le fichier.
# Virtual Hosts
# Include /Applications/MAMP/conf/Apache/extra/httpd-vhosts.conf
Supprimez le signe dièse (dièse) à partir du début de la ligne commençant par Include
# Virtual Hosts
Include /Applications/MAMP/conf/Apache/extra/httpd-vhosts.conf
Enregistrez le fichier, puis ouvrez Applications/MAMP/conf/Apache/extra/httpd-vhosts.conf. C'est ici que vous définissez les hôtes virtuels.
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/Applications/MAMP/Library/docs/dummy-Host.example.com"
ServerName dummy-Host.example.com
ServerAlias www.dummy-Host.example.com
ErrorLog "logs/dummy-Host.example.com-error_log"
CustomLog "logs/dummy-Host.example.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/Applications/MAMP/Library/docs/dummy-Host2.example.com"
ServerName dummy-Host2.example.com
ErrorLog "logs/dummy-Host2.example.com-error_log"
CustomLog "logs/dummy-Host2.example.com-access_log" common
</VirtualHost>
Éditez les deux exemples. Les hôtes virtuels remplacent l’hôte local existant, le premier doit donc rétablir l’hôte local. Modifiez le second pour l'hôte virtuel que vous souhaitez ajouter. Seules les directives DocumentRoot et ServerName sont requises. Pour ajouter un hôte virtuel à mon site, les définitions modifiées doivent ressembler à ceci:
<VirtualHost *:80>
DocumentRoot /Applications/MAMP/htdocs
ServerName localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/username/Sites/mysite"
ServerName mysite.loc
</VirtualHost>
Cela suppose que vous souhaitiez localiser les fichiers de mon site dans votre dossier Sites. Remplacez "nom d'utilisateur" dans la deuxième définition par votre propre nom d'utilisateur Mac. Si vous souhaitez stocker les fichiers dans un emplacement différent, ajustez la valeur de DocumentRoot en conséquence.
Si vous souhaitez créer plusieurs hôtes virtuels, copiez l'une des définitions et modifiez-la en conséquence.
Enregistrez tous les fichiers que vous avez modifiés et redémarrez les serveurs dans le panneau de configuration de MAMP. Vous devriez maintenant pouvoir accéder à l'hôte virtuel à l'aide de l'URL suivante: http: //mysite.loc/ .
Prendre plaisir..!!
Dans ma configuration dans MAMP, seul le premier hôte virtuel répondait.
Après plusieurs heures de recherche, j’ai fondé l’instruction permettant de résoudre le problème (avant d’énumérer les définitions des hôtes virtuels):
NameVirtualHost *:80
Maintenant, mes 3 hôtes virtuels fonctionnent!
Autoriser les hôtes virtuels
Allez dans Applications> MAMP> conf> Apache> httpd.conf
Trouvez cette ligne:
# Virtual hosts
#Include /Applications/MAMP/conf/Apache/extra/httpd-vhosts.conf
Décommentez le code en supprimant le symbole dièse.
# Virtual hosts
Include /Applications/MAMP/conf/Apache/extra/httpd-vhosts.conf
Autoriser le remplacement de SymLink
Recherchez cette ligne dans le même fichier httpd.conf
.
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
</Directory>
changer Aucun à tous.
<Directory />
Options Indexes FollowSymLinks
AllowOverride All
</Directory>
Ajouter le chemin de l'hôte virtuel
Allez dans Applications> MAMP> conf> Apache> extra> httpd-vhosts.conf
ajoutez l'hôte virtuel avec servname et racine du document comme le code ci-dessous
<VirtualHost *:80>
ServerName example.dev
DocumentRoot "/path/to/directory"
</VirtualHost>
Autoriser votre ordinateur à reconnaître votre domaine local
Terminal ouvert et type
Sudo pico /etc/hosts
puis ajoutez votre domaine
127.0.0.1 example.dev
Redémarrez votre serveur.
Si l'URL montre une erreur en chrome, essayez Safari
Ajout à la réponse de Ritesh
Vous voudrez probablement aussi ajouter une configuration de répertoire dans votre fichier httpd.conf similaire à celle qui existe déjà, mais pour la racine du document de votre nouveau serveur.
Par exemple:
<Directory "/Users/username/Sites/mysite">
Options All
AllowOverride All
Order allow,deny
Allow from all
XSendFilePath "/Users/username/Sites/mysite"
</Directory>
Récemment, j'ai changé de XAMP à MAMP sur MAC. J'ai essayé de configurer mes derniers hôtes virtuels, mais le numéro de port 8888 de MAMP évitait le travail habituel.
Finalement j'ai trouvé la solution. Vous pouvez modifier le port d'écoute et le nom du serveur dans httpd.conf, comme vous le trouverez dans le post suivant: https://www.taniarascia.com/setting-up-virtual-hosts/