Installer SPIP sur Mac OS X

Mac os X est un UNIX dont le serveur web par défaut est Apache, il est également doté de sendmail et de php : il ne lui manque que MySQL pour supporter pleinement Spip.
PS : Cet article a été mis à jour depuis sa publication initiale et doit normalement vous permettre d’installer spip sans trop de difficulté sur toutes les version de Mac OS X.

Votre mac comme serveur web

Mise à Jour Importante On trouve maintenant des Applications qui propose de gérer toutes seules Apache, PHP, Mysql et parfois plus. Si vous recherchez la solution la plus simple vous vous tournerez vers elles et éviterez de lire la suite de cet article, ce qui serait bien dommage. Ces solutions sont souvent citées sur les forums donc elles méritaient d’être sur cette page également.
Voir par exemple :

Depuis la mort du système 9 et l’avénement du système X, les machines Apple sont devenues des ordinateurs Unix dotés de la plus belle interface qui soit et de la meilleure compatibilité possible avec le monde Windows.

Les serveurs web BSD sont réputées pour leur temps de fonctionnement sans redémarrage ; Mac OS X est un Unix BSD.

Vous ne le savez peut être pas mais votre mac est doté d’un serveur web et même, du meilleur : Apache.

Pour l’activer, vous devez simplement aller dans les préférences systèmes, cliquer sur partage et enfin, cliquer sur partage web.

Votre serveur Apache est démarré. Vous pouvez désormais voir votre site web statique en local en tapant dans votre navigateur :

  • http://localhost/ qui signifie à votre ordinateur qu’il cherche le serveur web « en local »
  • ou http://127.0.0.1/ qui signifie à votre ordinateur qu’il cherche le serveur web par son adresse IP « locale » qui est 127.0.0.1 (en effet chaque ordinateur possède pour se nommer lui-même cette adresse IP dite loopback).
  • ou par son nom RendezVous, celui de la 2e ligne du Tableau de Bord Partage Web, soit alors http://nomrendezvous.local/
  • Vous pouvez également y accéder d’une 4e manière si vous êtes connecté au net : au travers de l’adresse IP qui vous est attribuée par votre fournisseur d’accès (visible dans les préférences réseau de votre mac). [1]

Tout fonctionne ? Parfait, alors passons au php.

Mac OS X et php sont dans un bateau

Le php est le langage de programmation utilisé par Spip, pour pouvoir utiliser Spip en local, vous DEVEZ avoir php sur votre mac et ce n’est possible que sous Mac OS X actuellement.

Deux choses :

  • php est déjà installé sur votre ordinateur :-)
  • php n’est pas activé sur votre ordinateur...

En effet, Apple a jugé bon de mettre php avec son serveur web mais, pour une raison que nous ignorons il a préféré ne pas l’activer par défaut.

Pour activer php sur votre machine, il va vous falloir modifier quelques petites choses dans fichier de configuration d’Apache.

ATTENTION : les modifications que vous ferez sur le fichier en question sont délicates et peuvent altérer le fonctionnement du serveur web : faites donc bien attention et ne nous reprochez pas VOS erreurs, merci ;-)

Mise en œuvre

Pour activer le module PHP du logiciel serveur web Apache il va falloir :

  1. faire une copie du fichier « /private/etc/httpd/httpd.conf » ;
  2. modifier le fichier « httpd.conf » pour activer le module PHP ;
  3. faire une copie du fichier « httpd.conf » modifié ;
  4. lancer ou relancer le logiciel Apache pour qu’il prenne en compte les modifications ;
  5. faire un test pour être sûr que tout marche.

Les opérations 1, 2 et 3 doivent être faites à partir d’un shell en tant qu’utilisateur root. Pour cela nous allons utiliser l’application Terminal. Elle se trouve dans le sous dossier « Utilities » (utilitaires) du dossier « Applications ».

Le terminal d’Apple
lieu où l’on peut écrire les commandes shell

Pour pouvoir modifier les fichiers il faut que vous ayez activé le compte root (ce n’est pas du ressort de cet article alors je vous renvoie à Ultramac qui a fait un article sur le sujet).

1 - Copie du fichier « httpd.conf » original

Dans la fenêtre de Terminal tapez la commande suivante :

sudo cp /etc/httpd/httpd.conf /etc/httpd/httpd.conf.apple

La commande sudo permet de lancer une commande en tant que super utilisateur (root). Lors d’une première invocation le mot de passe de l’utilisateur (pas celui de root) est demandé et si l’utilisateur est autorisé, la commande est exécutée. Il est ensuite possible de lancer plusieurs sudo sans que le mot de passe soit demandé. Au bout d’un moment (je crois que le délai normal est de cinq minutes) il est à nouveau nécessaire de taper son mot de passe. La commande cp fait une copie de fichier. Ici le nouveau fichier s’appellera " httpd.conf.apple ".

Cette copie nous permettra de revenir à la configuration initiale en cas de pépin.

2 - Modification du fichier " httpd.conf"
Midse à Jour  :
Les réfractaires à l’utilisation du Terminal pourront utiliser un éditeur de texte tel que SubEthaEdit, qui gère les droits des fichiers, permet d’ouvrir des fichiers cachés et de les modifier en demandant le mot de passe administrateur au moment de la sauvegarde.
Il suffit dans le Finder de faire « Aller au dossier », d’entrer dans la fenêtre le chemin du répertoire (ici /etc/httpd/ ) et ensuite d’éditer le fichier httpd.conf.

La suite du paragraphe se passe dans le Terminal à vous de l’adapter, il s’agit juste de changer 2/3 choses dans ce fichier et/ou d’en ajouter d’autres.

Le fichier " httpd.conf " ne peut être modifié que par l’utilisateur " root ", nous allons donc utiliser la commande " sudo ". Pour éditer le fichier, nous allons utiliser l’éditeur de texte " pico ". On ne peut pas utiliser la souris avec cet éditeur, mais il est un peu plus simple à manipuler que l’éditeur " vi ". Voici quelques commandes utiles pour utiliser pico.

[flèche gauche et flèche droite ], pour se déplacer d’un caractère à gauche ou à droite ;
[flèche haut et flèche bas ], pour se déplacer d’une ligne vers le haut ou vers le bas ;
[ctrl-y et ctrl-v ], pour se déplacer d’un écran vers le haut ou vers le bas ;
[touche d’effacement] pour effacer un caractère ;
[ctrl-x] pour quitter pico.

Dans la fenêtre de Terminal lancez l’éditeur pico pour éditer le fichier de configuration d’Apache. Les indications ci-dessous concernent le fichier de conf livré avec Jaguar (Mac OS X.2), dans des versions antérieures de OS X, si les lignes à modifier sont absentes, recopier directement la ligne voulue.

sudo pico /etc/httpd/httpd.conf

Pico, éditeur de texte
un petit éditeur de texte Unix livré avec macosX pour éditer, par exemple, httpd.conf

Déplacez vous dans le texte jusqu’à arriver à la ligne suivante.
Astuce : vous pouvez cherchez un terme dans pico en tapant Ctrl+W puis votre terme à rechercher, puis Entrée

#LoadModule php4_module        libexec/httpd/libphp4.so

Effacez le # en début de ligne pour obtenir ce qui suit.

LoadModule php4_module        libexec/httpd/libphp4.so

De même, effacez le caractère # au début de la ligne contenant le texte qui suit.

#AddModule mod_php4.c

Ces modifications ont pour but d’activer le module PHP.

activer le support de php4
le module est activé si le dièse(#) est enlevé

Continuez à vous déplacer dans le fichier jusqu’à arriver à la partie suivante.

<IfModule mod_dir.c>
  DirectoryIndex index.html
</IfModule> 

Après « index.html » ajoutez « index.htm index.php index.php3 » ce qui donne la ligne suivante.

DirectoryIndex index.html index.htm index.php index.php3

Cette ligne indique à Apache, que lorsqu’un dossier est demandé, Apache doit chercher dans ce dossier un fichier nommé « index.html », « index.htm », index.php « ou » index.php3 « et le renvoyer s’il le trouve. » index.htm « correspond à un fichier html conçu sous Microsoft DOS et ses dérivés, » index.php3 « et »index.php« correspondent à des fichier PHP. Normalement les fichiers se terminant par » .php3 « sont des fichiers utilisant la version 3 du langage PHP, mais en général le module comprend sans problème le contenu de ces fichiers. La prise en compte des fichiers » .php3 " est INDISPENSABLE pour SPIP.

Un peu plus loins vous trouverez les lignes suivantes. si ces lignes ne sont plus présentes, comme dans les dernières version du fichier fourni par Apple, il suffit de les ajouter à la fin du fichier

#AddType application/x-httpd-php .php 
#AddType application/x-httpd-php-source .phps 

Supprimez le caractère # en début de ligne et ajoutez « .php3 » à la fin de la première de ces deux lignes ce qui donne ce qui suit.

AddType application/x-httpd-php .php .php3 
AddType application/x-httpd-php-source .phps 

Cette dernière modification indique à Apache que les fichiers se terminant par « .php » ou par « .php3 » sont à gérer par le module PHP.

Maintenant il ne reste plus qu’à enregistrer vos modifications. Tapez la combinaison de touches [ctrl-x ]. L’éditeur pico vous demande alors si vous voulez enregistrer les modifications, tapez [y]. Il affiche ensuite le nom du fichier où vont être enregistré les changements, tapez la touche [Retour] .

3 - Copie du fichier modifié

Lors des mises à jour récentes de Mac OS X, Apple a remplacé purement et simplement un certain nombre de fichiers dont le fichier httpd.conf . Il est plus prudent d’avoir un double quelque part pour pouvoir remettre en place rapidement votre configuration. Dans la fenêtre de Terminal tapez la commande suivante :

sudo cp /etc/httpd/httpd.conf /etc/httpd/httpd.conf.perso

4 - Prise en compte des nouveaux réglages par Apache

Pour pouvoir prendre en compte les nouveaux réglages il faut lancer ou relancer le serveur Apache. Vous pouvez utiliser le tableau « Partage » de « Préférences Système ». Si le partage web est activé, cliquez sur le bouton « Arrêter ». Une fois le partage web arrêté, cliquer sur le bouton « Démarrer ».

5- Un petit test pour vérifier que c’est bon

Téléchargez le fichier

test

ci-joint à l’article, et déposez le répertoire test dans votre dossier Sites, puis allez à l’URL suivante :
http://127.0.0.1/ Nomutilisateur/test/

Si vous lisez autre chose que du code php c’est tout bon : ça marche !, sinon reprenez tout depuis le début (on est désolé...).

Mysql et macos X

Spip nécessite une base mysql pour fonctionner mais là Apple n’a pas prévu de l’installer par défaut, il va donc falloir la télécharger et l’installer.

Nous allons faire simple : d’autres personnes nous ont déjà prémaché tout le travail.

-  Méthode (quasi) automatique

Il existe un package complet MySQL sur serverlogistics.com pour vous faciliter la vie, avec Tableau de préférence intégré sur ce site.

Les étapes de l’installation sont les suivantes :

  • Télécharger le .dmg
  • Lancer MySQL.pkg et installer
  • Placer MySQL.prefPane dans Library > PreferencePanes
  • Dans Préférences systèmes > MySQL : bouton « initialize » puis bouton « Start » puis bouton « Set Root Password »

-  Méthode plus manuelle

  • Direction le site de Marc Liyanage (entropy.ch) où un MySQL récent compilé pour Mac OS X est disponible (Pour ceux que l’anglais rebute, il existe une traduction française de cette page ).
  • Téléchargez le bon package selon votre version Mac OS X et exécutez les instructions indiquées sur la page web dans le Terminal. Après quelques copier-coller MySQL sera opérationnel.

Installer SPIP

Nous supposons que vous avez déjà lu le manuel d’installation officiel, sinon faites le avant de continuer car nous n’allons pas tout détailler dans cet article !

C’est parti pour SPIP

  • Déposez le dossier contenant SPIP dans votre Répertoire Sites de votre dossier utilisateur (on suppose après que ce dossier se nomme « spip »)
  • Connectez vous au sous répertoire ecrire/, pour ceux qui n’auraient pas suivi il y a plusieurs méthodes possible, dont celle-ci qui est universelle :
    http://127.0.0.1/spip/ecrire/
  • suivez les indications à l’écran :
    adresse de la base : localhost
    identifiant de connexion : root
    mot de passe : mot de passe de root de MySQL

Résolution de bugs ?

Il se pourrait (mais ce serait étonnant) que l’installation ne marche pas du premier coup car certains répertoires de « spip » ne sont pas accessibles en écritures (par exemple si vous ne mettez pas le répertoire spip dans « Sites » mais seulement son alias). Il vous faudra alors modifier les droits sur ces répertoires, soit via le panneau d’informations [pomme+i], soit par le terminal : changer le groupe en « www » et autoriser le en lecture+ecriture. Si vous n’y connaissez rien en droits d’écritures suivez la procédure clasique (ou consulter cette page).


MAJ du 30 mai (Tiger)

Ne possédant pas le nouvel OS de Apple, Tiger, je me permets de recopier ici un message de la liste des utilisateurs de spip concernant ce sytème.


Je viens de passer de Panther à Tiger.
Clean install sur partition neuve, avec transfert des données lors de
l’install.

Pour que php, mysql et SPIP en local refonctionne, il faut
-  réinstaller les packages de Marc Linnage (PHP) et (MySQL).
-  remettre le phpmyadmin dans webserver (PhpMyAdmin)
-  et modifier le http.conf comme sous Tiger. Pour rappel

#LoadModule php4_module        libexec/httpd/libphp4.so
doit devenir :
LoadModule php4_module        libexec/httpd/libphp4.so
et dans la liste suivante
#AddModule mod_php4.c
devient
AddModule mod_php4.c
autoriser les php3 pour SPIP en ajoutant :
AddType application/x-httpd-php .php .php3

Notes

[1si vous avez plusieurs utilisateurs sur votre machine l’adresse sera, par exemple, http://127.0.0.1/ Nomutilisateur/

Discussion

Aucune discussion

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom