Imprimer

Installation Mac OS X

Installation Mac OS X 10.5, 10.6

La solution à la carte

Installation de PHP

Léopard intègre un serveur APACHE 2 et PHP 5, ce qui est une excellent nouvelle, mais pour cette raison les fichiers de configuration ont été déplacés. Il faudra donc éditer le fichier httpd.conf qui se trouve désormais dans le répertoire :

/etc/apache2/

Et décommenter la ligne :

LoadModule php5_module libexec/apache2/libphp5.so

Attention toutefois à ne pas remplacer le fichier httpd.conf par une ancienne version, il semble qu'il y ait quelques différences avec apache2.

Installation de PEAR

$ cd /usr/local
$ curl http://pear.php.net/go-pear | sudo php

Laisser par défaut les options lors de l'installation

Ensuite vous devez mettre à jour le PATH? du système pour prendre en compte la version installée.

Editer le fichier suivant :

$ vi ~/.bash_profile

Et mettre ceci :

PATH=/usr/local/bin:$PATH

Pour vérifier que votre installation c'est correctement effectuée, relancer votre terminal et taper la commande suivante :

$ which pear

La commande doit retourner ceci : /usr/local/bin/pear

Installation de mysql

MySQL a une distribution binaire pour Mac OS X disponible ici : http://dev.mysql.com/downloads/mysql/5.1.html#macosx (external link)

Lancer MYSQL

Jusqu'à présent, le panneau de préférences MySQL de la version Tiger est indisponible et ne pas correctement démarrer et arrêter MySQL. Vous pouvez le faire par la fenêtre du terminal avec :

sudo /usr/local/mysql/support-files/mysql.server start

Pour arrêter le serveur:

sudo /usr/local/mysql/support-files/mysql.server stop

Apportez les mysqld.sock à PHP

Un problème qui est venu avec MySQL et sur Leopard est l'emplacement du fichier mysqld.sock. Auparavant, le dossier par défaut de ce fichier est dans le répertoire /tmp. Cet emplacement est maintenant déplacée dans le répertoire /var/mysql. PHP va le chercher là.
Malheureusement, l'emplacement par défaut de MySQL aura placer le fichier dans l'ancien emplacement.
On peut résoudre ce problème en créant un fichier my.cnf dans le fichier de configuration /etc. Enregistrer un fichier avec le contenu suivant au fichier /etc/my.cnf:

[client] [Clients]
socket = /var/mysql/mysql.sock 

[mysqld] [Mysql]
socket = /var/mysql/mysql.sock

Installation de APC

Commencer par copier le fichier nécessaire pour APC.

$ cp /Developer/SDKs/MacOSX10.5.sdk/usr/include/php/ext/pcre/pcrelib/pcre.h /usr/include/php/ext/pcre/

Puis taper les commandes suivants :

$ cd /usr/local/src
$ wget http://pecl.php.net/get/APC-3.1.3p1.tgz
$ tar xzvf APC-3.1.3p1.tgz
$ cd APC-3.1.3p1
$ phpize
$ ./configure --enable-apc --enable-mmap
$ make
$ make install

Ensuite copier l'extension dans le répertoire des extensions de PHP.

cp /usr/local/src/APC-3.1.3p1/modules/apc.so /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

Enfin éditer le php.ini et inscrire ceci :

extension = apc.so
apc.enabled=1
apc.shm_size=30

Redémarrer Apache.

Avoir Wget sous Snow Leopard n’est pas si compliqué finalement, pas besoin d’installé Fink et encore moins MacPorts. Il suffit juste de télécharger le fichier suivant (external link) et d’accéder au dossier /usr/local/ et d’y copier les 3 dossier téléchargé précédemment.

Installation Mac OS X 10.4

Deux solutions s'offent à vous pour installer php5 sous Mac OS X.

MAMP : la solution tout en un

MAMP (external link) a pour principal avantage sa simplicité d'utilisation. En un clic, vous avez installé votre serveur apache, php et mysql. Encore un clic et vous avez votre widget dans le dashboard permettant de contrôler l'activité des serveurs.

Le seul défaut de cette installation est sa rigidité. Vous ne pourrez que difficilement ajouter des extensions. Je devais par exemple avoir un accès ODBC depuis php mais l'extension ODBC n'était pas présente dans cette version. J'ai donc abandonné cette solution.

Cependant, cette distribution est assez complète et si elle répond à vos besoins, n'allez pas chercher plus loin.

La solution à la carte

Installation

Dans cette solution, j'ai utilisé le serveur apache livré avec MAC (version 1.3). J'ai donc téléchargé la dernière version de PHP proposée par Entropy (external link) (dans mon cas, la 5.2), puis la dernière version de mysql directement sur le site de mysql (external link) (dans mon cas, la 5.0.27). Leur installation ne pose aucun problème.

Ensuite, on peut démarrer ou arrêter ces différents serveurs depuis les préférences systèmes :

  • pour apache : dans Partage, activer le Partage Web Personnel
  • pour mysql : démarrer le serveur directement depuis l'icône mysql

Et voila, votre serveur php mysql sous Mac OS X tourne !

Paramétrage

Dans mon cas, voici les différents éléments qui m'ont servi afin de paramétrer correctement mon serveur :

commandes start/stop apache
apachectl start/stop (dans /usr/sbin/)
chemin vers htdocs
/Library/WebServer/Documents/

chemin vers php.ini
/usr/local/php5/lib/php.ini + php.d
commande pear
/usr/local/php5/bin/pear

commandes start/stop mysql
intégré dans les paramètres systèmes
chemin vers les données mysql
/usr/local/mysql-max-5.0.27-osx10.4-i686/data/

nom du groupe apache
www

Installation de eAccelerator

Téléchargez tout d'abord la dernière version de eAccelerator (external link) (la version 0.9.5 étant bugguée, j'ai installé un snapshot svn : la version 301)

Positionnez vous ensuite dans le répertoire des sources de eAccelerator

rootUser > /usr/local/php5/bin/phpize
rootUser > ./configure --enable-accelerator=shared \ 
  --with-eaccelerator-shared-memory \ 
  --with-php-config=/usr/local/php5/bin/php-config
rootUser > make
rootUser > make install

Créez le fichier 50-extension-eaccelerator.ini suivant dans le repertoire /usr/local/php5/php.d/ :

extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
eaccelerator.name_space = "votre_name_space"
eaccelerator.allowed_admin_path = "/Library/WebServer/Documents/"

Enfin redémarez apache :

rootUser > apachectl restart


Dernièrement modifié par lryo10504 points  .
Modifiée dernièrement le vendredi 25 de juin, 2010 09h18m09.

Sponsors privilégiés

Mediboard project