dokuro Posté(e) le 28 décembre 2014 Signaler Share Posté(e) le 28 décembre 2014 Venant tout juste de changer de Mac, je découvre Mountain Lion et je me suis dit qu’il était temps de mettre un peu d’ordre dans mon environnement de développement. J’avais l’habitude d’utiliser MAMP pour le développement web, car celui-ci a l’avantage indéniable de fournir un package prêt à l’emploi, le tout en un clic. Revers de la médaille, il nous rend tributaire des versions de logiciels qu’il propose et s’intègre parfois mal avec d’autres environnements. Ainsi, nous verrons dans ce tutoriel comment mettre en place un stack AMP (Apache, MySQL et PHP) sous Mac OSX simplement et rapidement, le tout en utilisant au maximum les outils déjà intégrés au système. Note : ce tutoriel a été réalisé sous Mountain Lion, mais il devrait fonctionner pour les autres versions. En effet, les versions précédentes (Snow Leopard et Lion) possèdent, elles aussi un serveur Apache intégré. Si vous rencontrez des difficultés, n’hésitez pas à laisser un commentaire à la suite de l’article. Installer Apache Première bonne nouvelle, Apache est déjà intégré à votre système. Pour en avoir la preuve, lancez donc la commande suivante : 1 httpd -v Le retour devrait ressembler à ceci : 1 2 Server version: Apache/2.2.22 (Unix) Server built: Aug 24 2012 17:16:58 L’administration d’apache se fait grâce aux commandes suivantes : 1 2 3 4 sudo apachectl start sudo apachectl restart sudo apachectl stop sudo apachectl graceful # relance apache en attendant la fermeture des connexions établies Le document root En vous rendant sur http://localhost, vous devriez voir le célèbre “It Works”. Pour le moment, le document root se trouve dans : 1 /Library/WebServer/Documents/ Sur les anciennes versions de l’OS, les utilisateurs disposaient d’un dossier Sites dans leur répertoire personnelet l’on pouvait accéder à celui-ci via l’adresse http://localhost/~user (notez l’utilisation du tilde dans l’adresse). Nous allons utiliser ce système. On commence donc par créer le répertoire Sites s’il n’existe pas déjà (c’est votre cas si vous êtes sous Mountain Lion). 1 mkdir ~/Sites Création d’un fichier de configuration pour votre utilisateur : 1 sudo vim /etc/apache2/users/votreuser.conf Note : si vous ne connaissez pas votre utilisateur, lancer la commande suivante : 1 whoami On y insère la configuration suivante : 1 2 3 4 5 6 7 8 <Directory "/Users/votreuser/Sites/"> Options Indexes MultiViews AllowOverride All Order allow,deny Allow from all </Directory> Include /Users/votreuser/Sites/httpd-vhosts.conf Le include à la ligne 8 permet d’apporter un peu de commodités dans la gestion des vhosts car le fichier de conf sera disponible à la racine de ~/Sites, donc accessible rapidement. Notez que vous pourriez très bien mettre vos vhosts à la suite du fichier votreuser.conf. Il faut donc créer le fichier alloué à la configuration des vhosts : 1 touch ~/Sites/httpd-vhosts.conf On vérifie les permissions du fichier “votreuser.conf” qui doivent être à 644 : 1 sudo chmod 644 /etc/apache2/users/robin.conf On test les changements : 1 2 3 4 sudo apachectl restart cd ~/Sites/ touch index.html echo "It works from my personal folder" > index.html Rendez vous sur http://localhost/~votreuser/index.html. La page devrait afficher votre texte “It works from my personal folder”. Édition d’un vhost Les vhosts vous permettront de tester plusieurs sites en utilisant des noms de domaine en local. On édite le fichier httpd-vhosts.conf : 1 vim ~/Sites/httpd-vhosts.conf On y ajoute la configuration suivante : NameVirtualHost *:80 <Directory "/Users/votreuser/Sites"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> <VirtualHost _default_:80> ServerName localhost DocumentRoot /Library/WebServer/Documents </VirtualHost> <VirtualHost *:80> ServerName site1.local DocumentRoot "/Users/votreuser/Sites/site1" </VirtualHost> La dernière section est celle que vous devrez copier/coller pour créer autant de vhost que nécessaire. Bien sûr, nous ne disposons pas d’un nom de domaine réel pour tester le vhost et nous n’en avons d’ailleurs pas besoin. Nous allons tout simplement ajouter un host dans le fichier /etc/hosts : 1 sudo vim /etc/hosts On ajoute la ligne suivante (à la fin du fichier) : 1 127.0.0.1 site1.local Cette ligne aura pour effet de faire pointer le nom de domaine site1.local sur localhost. Pour tester, l’on créé un dossier site1 dans ~/Sites : mkdir ~/Sites/site1 touch ~/Sites/site1/index.html echo "It Works from site1" > ~/Sites/site1/index.html On relance Apache : 1 sudo apachectl restart On se rend sur http://site1.local pour tester le résultat. Installer PHP Comme pour Apache, la procédure se révèle simplissime. Il suffit de décommenter la ligne du module php5 dans le httpd.conf : 1 sudo vim /etc/apache2/httpd.conf On décommente la ligne suivante : 1 LoadModule php5_module libexec/apache2/libphp5.so On redémarre Apache : 1 sudo apachectl restart On teste le fonctionnement de php avec notre fichier créé précédemment : 1 2 mv ~/Sites/site1/index.html ~/Sites/site1/index.php echo '<?php phpinfo(); ?>' > ~/Sites/site1/index.php Puis on pointe sur l’adresse http://site1.local. Si tout s’est bien passé, le phpinfo() devrait s’afficher. Note : la configuration de php se situe dans /etc/php.ini.default (à renommer en php.ini). cd /etc sudo cp php.ini.default php.ini sudo chmod ug+w php.ini sudo chgrp staff php.ini Installer MySQL Avant d’installer MySQL, rendez vous dans Préférences systèmes->Système et confidentialité. Après avoir dévérrouillé le cadenas, cochez “n’importe où” pour la section “Autoriser les applications téléchargées de”. Sur le site de MySQL, on télécharge la version 64 bits sous format d’archive DMG (Mac OS X ver. 10.6 (x86, 64-bit), DMG Archive) Le site : http://dev.mysql.com/downloads/mysql/ Note : vous n’êtes pas obligé de vous inscrire pour télécharger MySQL Une fois l’archive décompressée et lancée, il vous suffit d’installer les 3 composants : Pour démarrer/arrêter MySQL, rendez vous dans vos préférences systèmes : Pour tester MySQL : 1 /usr/local/mysql/bin/mysql -v Cela devrait vous ouvrir un shell MySQL en affichant le numéro de version. Pour le quitter, faites Ctrl + C. Pour utiliser le binaire directement, on ajoute celui-ci à notre path (à adapter selon votre configuration). SI vous débuter et utilisez bash, créer tout simplement un fichier .bash_profile dans votre home. 1 vim ~/.bash_profile Ajoutez-y la ligne suivante : 1 export PATH="/usr/local/mysql/bin:$PATH" On teste sans le chemin absolu : 1 mysql -v Un mot de passe root pour MySQL Il est important de définir un mot de passe root pour MySQL à l’aide de la commande suivante : 1 mysqladmin -u root password 'motdepasse' Faites attention à bien utiliser les simples quotes. Installer phpMyAdmin Se rendre sur la page de download de phpMyAdmin : http://www.phpmyadmin.net/home_page/downloads.php On récupère le fichier phpMyAdmin-3.5.3-all-languages.zip. Une fois décompressé, on renomme le dossier en phpmyadmin puis on le place à la racine dans ~/Sites. On fixe un problème d’erreur 2002 : 1 2 sudo mkdir /var/mysql sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock On pointe sur l’adresse http://localhost/~votreuser/phpmyadmin/ Il suffit alors de se connecter avec l’utilisateur root et le mot de passe que vous avez configuré dans l’étape précédente. En bonus : un script pour générer vos vhosts Dans le but de simplifier un peu plus la procédure d’ajout de vhosts, j’ai créé un petit script bash dédié à cette tâche qui : éditera le fichier /etc/hosts créera un repertoire dédié au site dans ~/Sites (s’il n’existe pas déjà) éditera un vhost dans votre httpd-vhosts.conf redémarrera Apache pour prendre en compte les changements Pour l’utiliser Récupérez le script sur Github : 1 curl -OL https://raw.github.com/robinparisi/scripts-osx/master/vhosts-generator.sh Rendez-le exécutable : 1 chmod +x vhosts-generator.sh Editez la partie concernant le user : 1 USER="votre_user_ici" Lancez-le (sans oublier sudo nécessaire car demande l’édition du fichier hosts et le contrôle d’Apache) : 1 sudo ./vhosts-generator.sh Choisir un nom de domaine (celui que vous entrerez dans votre navigateur pour accéder au site en local) et un nom pour le répertoire du site. Et voilà, vous avez maintenant un environnement de développement fonctionnel et pleinement intégré à votre système. Si vous testez ce tutoriel depuis une autre version de Mac OS X, n’hésitez pas à valider la procédure dans les commentaires. Bon dev à tous Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.