Installer un environnement apache php mysql sur un mac avec snow leopard
On a de la chance sur mac, il y a déjà une partie des outils qui sont installé. C'est le cas pour apache et pour php.
Mais il faut les activer. Voilà mes notes en vrac pour faire cette démarche. C'est pas super propre.. un jour quand j'aurai le temps je ferai mieux 😀
sudo nano /etc/apache2/httpd.conf
décommenter:
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module libexec/apache2/libphp5.so
installer mysql
http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg
mysql-5.1.45-osx10.6-x86_64.dmg
installer tout ce qu'il y a sur l'image disque:
- mysql
- le startup item
- le prefpane
Puis activer mysql
Ensuite, il y a plein de warning quand on utilise la fonction strtotime...
Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /Users/mdespont/Sites/yopyop/include/lib/application.php on line 49
ici: http://maestric.com/doc/mac/apache_php_mysql_snow_leopard
On nous explique qu'il faut définir la timezone.
A choix une de celle-ci : http://www.php.net/manual/en/timezones.europe.php
Donc pour définir il faut ajouter un php.ini et compléter la ligne timezone en ajoutant le fuseau horaire voulu:
;date.timezone =Europe/Zurich
Puis.. subtilité.. il n'y a pas de php.ini par défaut.. il faut l'ajouter au besoin.. mais dedans les socket par défaut sont faux !!
Donc selon:
http://www.mac4ever.com/articles/creation/1153/php_mysql_sous_snow_leopard_et_xdebug_eclipse/
sudo cp /etc/php.ini.default /etc/php.ini
puis remplacer:
pdo_mysql.default_socket=/tmp/mysql.sock
mysql.default_socket = /var/mysql/mysql.sock
mysqli.default_socket = /var/mysql/mysql.sock
par
pdo_mysql.default_socket=/tmp/mysql.sock
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
Donc petit rechercher remplacer: In /etc/php.ini, replace the three occurences of /var/mysql/mysql.sock by /tmp/mysql.sock
Selon http://stackoverflow.com/questions/1293484/easiest-way-to-activate-php-and-mysql-on-mac-os-10-6-snow-leopard :
to complete your setup or mysql:
sudo vim /etc/profile
add alias
alias mysql=/usr/local/mysql/bin/mysql
alias mysqladmin=/usr/local/mysql/bin/mysqladmin
then set your root password
mysqladmin -u root password 'yourPassword'
then you can login with mysql -u root -p
Plusieurs virtual hosts pour apache
il faut décommenter la ligne qui permet à apache d'aller lire le fichier
/etc/apache2/extra/httpd-vhosts.conf
Fichier dans lequel j'ai mes virtual hosts.
J'ai les règles de ma réécriture d'url.
Voilà voilà.. tout va bien.. ça marche ! 😀
Reprendre les exemples du fichier exemple: httpd-vhosts-original.conf
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>
Installation de Xampp avec la même base de donnée mysql
Il faut télécharger xampp
Pour utiliser la même base de donnée que celle qui a été installé ci-dessus. Il suffit d'utiliser le même socket. Ainsi je crée un lien symbolique.
ln -s /tmp/mysql.sock /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
et dire qu’on loue le Mac pour sa convivialité et sa simplicité.
Y a pas encore un « tout en un » à la mode Ikea qui fait tous ces changements en quelques click de souris?
Ben zut alors.
Bon je me lance dans les manips alors
Merci pour le résumé, qui reste très bien fait.
L’installation de l’environnement « php et apache » est livrée tout en un très simple pour tout les mac sous le vocable de partage web.
MAIS… si tu veux vraiment faire du web, tu as très vite besoin de plus… besoin de mysql par exemple… et là, c’est le début de la fin…
Le mac a une installation par défaut qui n’est pas standard… donc il faut des installeurs et des bidouilles faites pour mac… c’est dommage.
On est vraiment pas loin d’un système parfait… mais on y es pas du tout !
Donc le plus simple pour bidouiller un environnement « apache, mysql, php » sur mac est de ne pas utiliser la solution fournie par défaut et de réinstaller un environnement cohérent avec tout ce que tu as besoin.
Pour ça, il y a les projet XAMP et MAMP qui fonctionnent pas trop mal.
Bonne chance !