web-dev-qa-db-fra.com

Comment créer des hôtes virtuels dans MAMP?

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?

18
Ritesh

Lors de la recherche sur Google, j'ai trouvé ces étapes pour créer facilement des hôtes virtuels sur MAMP:

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

  1. Allez maintenant dans votre répertoire MAMP et ouvrez le fichier de configuration Apache situé dans Applications/MAMP/conf/Apache/httpd.conf dans n’importe quel éditeur de texte et localisez les lignes suivantes:
# 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.

  1. Au bas de la page, vous trouverez deux exemples de définition des hôtes virtuels dans Apache. Ils ressemblent à ceci:
<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..!!

37
Ritesh

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! 

3
André DLC
  1. 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
    
  2. 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>
    
  3. 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>
    
  4. 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
    
  5. Redémarrez votre serveur.

    Si l'URL montre une erreur en chrome, essayez Safari

1
Srinivasan Raman

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

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/

0
szatti1489