Comment transformer Mac OS X Lion en serveur Web?

19

Après avoir utilisé MAMP pendant des siècles, j'ai découvert que je pouvais réellement utiliser le serveur Apache intégré de Snow Leopard. Maintenant que je suis passé à Lion, je ne sais plus comment faire cela.

Savez-vous comment transformer mon Mac OS X Lion en serveur Web, afin de pouvoir y exécuter facilement la dernière version de PHP et MySQL? De plus, comment définir les alias "localhost"? Je me souviens que c'était un fichier httpd.conf - quelque chose que je ne semble plus trouver sur Lion.

João
la source
Juste un peu d'aide pour les amateurs d'éditeurs GUI: Pour utiliser TextMate comme éditeur par défaut à partir de Terminal, vous pouvez l'appeler comme mate. sudo mate /etc/apache2/httpd.conf C'est une bonne idée de l'enregistrer dans ~ / .bash_profile à cet effet avant la 1ère utilisation: export EDITOR = 'mate -w' Et créez un lien symbolique dans votre dossier ~ / bin: ln -s /Applications/TextMate.app/Contents/Resources/mate ~ / bin / mate * Les informations ci-dessus s'appliquent aux utilisateurs de Mac OS X
ommunist

Réponses:

32

Vous devez d'abord activer Apache dans le volet de partage. Cochez «Partage Web» et votre serveur Web fonctionne.

Notez que depuis Mountain Lion , le partage Web a été supprimé du volet des préférences de partage, mais Apache est toujours inclus. Vérifiez cette réponse pour contrôler Apache dans Mountain Lion.

Activer le partage Web

Pour activer PHP, vous devrez modifier /etc/apache2/httpd.confdans Terminal.app. Cela nécessite des informations d'identification root. nanoest un éditeur de ligne de commande très accessible si vous n'êtes pas à l'aise avec vim.

sudo nano /etc/apache2/httpd.conf

Recherchez la ligne (vous pouvez appuyer sur ctrl+ Wpour lancer la recherche nano):

#LoadModule php5_module libexec/apache2/libphp5.so

et décommentez-le. Ensuite, trouvez la ligne

#Include /private/etc/apache2/extra/httpd-vhosts.conf

et décommentez cela également pour activer la prise en charge des hôtes virtuels.

Enregistrez le fichier et quittez nanoen appuyant sur ctrl+ X, puis confirmez les modifications en appuyant sur Y(es), puis enter.

Vous pouvez maintenant modifier vos hôtes virtuels dans le fichier /etc/apache2/extra/httpd-vhosts.conf

sudo nano /etc/apache2/extra/httpd-vhosts.conf

Il est important de noter que le premier hôte défini sera l'hôte par défaut pour les noms d'hôte non qualifiés. Pour résoudre les noms d'hôtes supplémentaires en dehors de, localhostje recommande de les coder en dur /etc/hosts.

Pour installer MySQL, téléchargez le programme d'installation à partir du site Web MySQL (le programme d'installation 64 bits devrait être correct). Suivez les instructions pour l'installer.

Enfin, pour configurer PHP pour MySQL, copiez la valeur par défaut php.ini:

sudo cp /etc/php.ini.default /etc/php.ini

Vous pouvez maintenant modifier /etc/php.ini(à nouveau un accès root requis) et remplacer toute référence à /var/mysql/mysql.sockpar /tmp/mysql.sock(l'emplacement par défaut du socket MySQL après l'exécution du programme d'installation). Il y a probablement environ 3 références à ce chemin.

Enfin, redémarrez Apache pour que la nouvelle configuration prenne effet:

sudo apachectl restart

Vous pouvez également redémarrer Apache en le désactivant puis en le réactivant dans le volet de partage.

Terminé.

Gerry
la source
1
Je vous conseille de ne jamais suggérer aucune sorte d'éditeur de texte de terminal, utilisez simplement textedit.app dans la commande au lieu de nano, car les éditeurs de texte de terminal sont simplement barbares.
Alexander - Rétablir Monica
12
Nano est assez convivial, IMO, et c'est vraiment ennuyeux d'essayer de modifier quelque chose avec les privilèges root de l'interface graphique.
NReilingh
13
@XAleXOwnZX: Je suis désolé mais c'est juste un mauvais conseil. Si quoi que ce soit, vous trouverez presque impossible de modifier ces fichiers dans TextEdit.app en raison d'un manque de privilèges, comme NReilingh l'a également souligné. En outre, il n'est pas déraisonnable de s'attendre à une certaine connaissance de la console de la part de tout développeur Web (en herbe).
Gerry
fonctionne généralement si vous le sudo
Alexander - Rétablir Monica
9
@XAleXOwnZX: Avec tout le respect que je vous dois, c'est sans doute le pire conseil que j'aie jamais vu sur une propriété Stack Exchange. Je suis d'accord qu'un éditeur de texte GUI est probablement une meilleure approche pour les personnes qui ne sont pas programmeurs ou qui n'ont pas beaucoup d'expérience Unix, cependant, TextEdit est la mauvaise application à conseiller simplement parce qu'il utilise par défaut une police de largeur variable et riche texte. Cela peut provoquer toutes sortes de problèmes (au-delà du simple cauchemar de l'utilisabilité d'écrire du code à largeur variable) qui seront extrêmement difficiles, voire impossibles à déboguer pour cette personne.
lightyrs
1

Pour mémoire, une alternative à MAMP est WebStart qui facilite la gestion d'un serveur Web professionnel Apache 2 sur Mac OS X 10.7 Lion.

btlo
la source
-2

Vous pouvez trouver un bon tutoriel ici pour activer également phpmyadmin et autres sans utiliser mamp

Thomas
la source
Les réponses à Ask Different doivent être plus qu'un simple lien. Il est correct d'inclure un lien, mais veuillez le résumer ou l'extraire dans la réponse. L'idée est de rendre la réponse autonome.
nohillside