Comment créer un environnement de travail pour développer du SPIP sur un MAC avec MAMP

Cet article est le premier de la série :
-  Comment créer un environnement de travail pour développer du SPIP sur un MAC avec MAMP
-  Ouvrir MAMP sur l’extérieur : Vhost, routeur, Domaine et DNS
-  Quelques outils pour développer du SPIP sous Mac

Nous allons utiliser MAMP 2 en version gratuite et licence GPL comme serveur web local (différent de MAMP Pro version payante). MAMP est l’acronyme de Macintosh Apache MySQL PHP et permet de lancer un serveur web local sous mac os X.

C’est donc une solution toute clé en main et tout-en-un, qui comprend Apache, PHP5 et PHP4, MySQL, PHPMyAdmin et SQLiteManage ...

Avantage par rapport à d’autres solutions :
-  MAMP ne compromettra pas une autre installation d’Apache.
-  MAMP peut se copier sur un autre mac pour être tout de suite opérationnel quand on change d’environnement.
-  MAMP permet de switcher de version php.
-  MAMP ne modifie aucun fichier du système.

Cet article se veut un complément à l’excellent article de Fil qui reste toujours d’actualité, pour configurer au mieux votre environnement sous Mac OS X. Il est valable pour du Léopard, Snow Léopard et Lion. Un petit clin d’œil à Xdjuj que je remercie :-)

Plan de la première partie : MAMP

-  I/ Installation et lancement de MAMP
-  II/ Structure du MAMP
-  III/ Réglages de l’interface
-  IV/ Les réglages avancés et personnalisés
-  V/ Mettre à jour sa version de MAMP en toute tranquillité, sans rien perdre de ses sites et de ses bases de données SQL
-  VI/ En cas de problèmes

I/ Installation et lancement de MAMP

1. On télécharge MAMP sur le site officiel

http://www.mamp.info/en/index.html

On récupère donc le pacquage zippé nommé MAMP_MAMP_PRO_2.0.x.zip, on le dé-zippe puis on lance l’installation. Suivre les différentes étapes de l’installeur. MAMP s’installe à la racine du dossier Applications. On doit avoir un compte administrateur sur le mac et connaitre son mot de passe d’admin.

2. On lance le logiciel en cliquant sur l’icône de l’application MAMP

Une fenêtre s’ouvre nous permettant de contrôler le bon lancement du serveur apache et du serveur de données MySQL.

Les voyants sont verts en cas de réussite, et rouges en cas d’échec. Il y a deux diodes correspondant l’une au serveur Apache, l’autre au serveur MySQL.

Une deuxième fenêtre, celle de la page d’accueil s’ouvre aussi. Cette page prouve également que tout fonctionne et que l’installation de MAMP a réussi.

L’URL par défaut du serveur web local sous MAMP est :

http://localhost:8888/MAMP

Mais on peut également y accéder en tapant l’adresse ip de localhost :

http://127.0.0.1:8888/MAMP

On peut utiliser l’adresse Rendez-Vous du partage web, Préférence système/partage/
avec l’option partage web de cochée. Les ordinateurs de votre réseau local peuvent accéder à votre ordinateur par le biais de l’adresse : imacalex.local

http://imacalex.local:8888/MAMP

On peut aussi ouvrir son serveur local vers l’extérieur, au prix de quelques opérations que l’on détaillera par la suite sur son modem (mappage de port, DMZ …), sur son fichier hosts et ses zones DNS, et utiliser l’adresse ip sortante fourni par son FAI, un domaine ou un dyndns.org :
-  http://mondomaine.info:8888/MAMP/
-  http://monipfixe:8888/MAMP/
-  http://mondyndns.org:8888/MAMP/

3. Configurer les préférences de MAMP selon ses besoins.

Si vous débutez, laissez les options cochées par défaut.

- L’onglet Démarrer / Arrêter :

-  Cocher lancer les serveur au démarrage de MAMP
-  Cocher Arrêter les serveurs en quittant MAMP
-  Décocher Vérifier MAMP Pro au démarrage de MAMP. On n’utilise pas la version payante
-  Cocher la page d’accueil au démarrage, URL de la page d’accueil /MAMP/ qui correspond donc à http://localhost:8888/MAMP ou http://127.0.0.1:8888/MAMP

- L’onglet Port :

Par défaut ce ne sont pas les ports traditionnels qui sont utilisés par MAMP pour Apache et MySQL, pour ne pas rentrer en conflit avec d’autres serveurs.
MAMP propose en standard le port 8888 pour Apache, le port 80 étant normalement le port utilisé par défaut pour le serveur web. MAMP propose en standard le port 8889 pour MySQL, le port 3306 étant normalement le port utilisé par défaut.

On peut switcher depuis cet onglet sur les Ports par défaut d’Apache et de MySQL ou revenir aux Ports par défaut de MAMP selon ses besoins.
Mais on peut aussi définir ses propres ports si on le souhaite.

- L’onglet PHP :

MAMP a l’énorme avantage de proposer deux versions de PHP :
-  La version 5.2.17
-  et la 5.3.6

Ceci s’avère très utile pour tester et développer sous différentes versions de PHP. Par défaut on prendra la version proposée qui est à plus récente, à savoir le 5.3.6.

MAMP nous propose aussi des extensions PHP pour le cache, à savoir XCache eAccelerator et APC. J’avoue ne pas trop savoir à quoi cela correspond. Nous avons laissé le XCache proposé par défaut.

- L’onglet Apache :

Il faut définir ici le Document Root. Par défaut il s’agit de /Applications/MAMP/htdocs
Mais on peut choisir un répertoire n’appartenant pas à MAMP si on le souhaite, n’importe où dans sa maisonnette d’utilisateur mac.

Traditionnellement, ceux qui n’utilisent pas /Applications/MAMP/htdocs se servent du répertoire Sites de leur dossier utilisateur /Users/user/Sites. L’avantage de conserver en Document Root le répertoire htdocs est que l’on peut copier l’application MAMP sur un autre mac et être tout de suite opérationnel. On centralise en un même endroit tous les éléments. Mais les autres choix de Document Root peuvent tout aussi bien se justifier et de défendre. Il s’agit donc du choix du document racine du serveur web, et c’est là qu’il conviendra de déposer tous ses répertoires de sites web.

- Créer une base SQL :

depuis l’onglet PhpMyadmin, dans la case créer une nouvelle base de données en entrant son nom.

Dans interclassement pour la connexion MySQL cocher utf8_general_ci et cliquer ensuite sur créer. On pourra éventuellement créer un user spécifique pour cette base de donnée avec les privilèges qu’il convient. Pour ce faire, cliquer sur l’onglet Privilèges de PhpMyAdmin, puis cliquer sur ajouter un utilisateur et remplir les cases du formulaire.

II/ Structure du MAMP

MAMP.app sert à lancer l’application. Elle a été installée dans Applications, et elle devra impérativement y rester. Les répertoires principaux de MAMP sont les suivants :

-  /Applications/MAMP : répertoire racine de l’application MAMP
-  /Applications/MAMP/cgi-bin
-  /Applications/MAMP/library : on y mettra notamment le my.cnf
-  /Applications/MAMP/bin : répertoire contenant les exécutables d’Apache, PHP4, PHP5, MySQL5 et SQLite.
-  /Applications/MAMP/conf : répertoire contenant les fichiers de configuration d’Apache (httpd.conf), et SQLiteManager (config.db).
-  /Applications/MAMP/tmp : répertoire contenant les fichiers temporaires créés par les exécutables. Le répertoire /tmp/php contient notamment les fichiers temporaires des sessions PHP.
-  /Applications/MAMP/db : répertoire contenant les bases de données SQLite et MySQL.
-  /Applications/MAMP/logs : répertoire contenant les fichiers de logs d’erreurs de PHP, Apache et MySQL.
-  /Applications/MAMP/htdocs : répertoire contenant les différents projets de sites Web si un autre dossier n’a pas été sélectionné.

III/ Réglages de l’interface

- Onglet Start
Sur la page d’accueil où dans l’onglet start, se trouvent les informations importantes dont on a besoin pour configurer un CMS, à savoir le hôte : localhost, le port SQL : 8889, l’user : root, le mot de passe : root

- Onglet Phpinfo
Toutes les informations au niveau de la configuration de PHP.
On y trouve notamment les informations du traditionnel php.info, avec la version de PHP active, ici Version 5.3.6, le chemin du fichier php.ini, il peut changer selon les versions de MAMP, /Applications/MAMP/bin/php/php5.3.6/conf/php.ini. On pourra y lire les valeurs par défaut de max_execution_time à 30 et de memory_limit à 32M du php.ini qu’il conviendra d’augmenter d’office pour une utilisation sereine de MAMP avec un CMS dont SPIP.

- Onglet : Xcache
On y touche pas. Je sais même pas trop à quoi ça sert.

- Onglet Phpmyadmin
L’interface de contrôle de MySQL.

- Onglet SQLiteManager
l’interface de contrôle de SQLite pour ceux qui utilise du SQLlight nativement proposé avec SPIP 3. Même si le manager nous semble beaucoup moins au point que le traditionnel Phpmyadmin. Nous continuons pour notre part à utiliser MySQL avec SPIP 3.

- Onglet Faq
Foire aux questions en anglais

- Onglet Try MAMP Pro
On ne l’abordera pas ici, mais nos différents réglages nous permettront d’avoir plus ou moins les mêmes options que la version Pro.

IV/ Les réglages avancés et personnalisés

Voici quelques réglages et quelques éléments de personnalisation du MAMP à faire pour travailler sereinement comme sur un vrai serveur dédié mais en local. Toutes ne seront pas obligatoires, à vous de voir selon vos besoins.

1. Ajuster les valeurs de php.ini

Il conviendra de modifier le php.ini de chacune des versions php proposées par MAMP. Le chemin vers le php.ini peut changer selon les versions de MAMP. Ne pas hésiter à faire dans le terminal ces lignes :

alexmacapple:~ alex$ cd /Applications/MAMP
alexmacapple:~ alex$
alexmacapple:MAMP alex$ find / -name php.ini 2>/dev/null

Qui nous donnera les bons chemins :

/Applications/MAMP/bin/php/php5.2.17/conf/php.ini

/Applications/MAMP/bin/php/php5.3.6/conf/php.ini

memory_limit set est à 8MB par défaut dans MAMP, il conviendra de lui donner une valeur de 32 MB pour être tranquille. Ce réglage là est impératif pour lancer confortablement un SPIP récent sous peine d’obtenir des erreurs de timeout.

On pourra également vérifier que max_execution_time est à 30 MB

On peut également rajouté ces lignes pour activer les erreurs php

error_reporting : E_ALL
display_errors : On

2. Créer dans MAMP le fichier de configuration MySQL (my.cnf)

Si vous avez besoin d’ajuster vos paramètres SQL, il conviendra de créer un fichier my.cnf dans le répertoire suivant /Applications/MAMP/Library/my.cnf

Il faut copier et surcharger le fichier qui se trouve dans
/Applications/MAMP/Library/support-files/my-­medium.cnf
et le placer dans le répertoire /Applications/MAMP/Library/ et le renommer en my.cnf

On peut le faire en ligne de commande à l’aide des lignes suivantes

sudo
cp
/Applications/MAMP/Library/support-­files/my-­medium.cnf
/Applications/MAMP/Library/my.cnf

Attention l’emplacement peut changer selon les versions de MAMP utilisées. On peut sinon rechercher le fichier par le terminal en tapant les commandes pour voir s’ils existent et où ils se trouvent :

find / -name my.cnf 2>/dev/null
find / -name my-medium.cnf 2>/dev/null

Éditer le fichier my.cnf et notamment modifiant la valeur de max_allowed_packet :
passer de max_allowed_packet = 1M à max_allowed_packet = 128M pourra nous être d’un grand secours dans le cas de très grosses bases de données.

3. Utiliser MySQL en ligne de commande avec MAMP sans passer par PhpMyAdmin

Il faut ouvrir le terminal, dans /applications/utilitaires/Terminal
Et taper la commande suivante :

/Applications/MAMP/Library/bin/mysql --host=localhost -uroot -proot

On peut dès lors utiliser les commandes de MySQL.
Taper par exemple : show databases ;

On peut aussi créer un lien symbolique pour n’avoir à taper que mysql depuis le shell

sudo ln -s /Applications/MAMP/Library/bin/mysql /usr/local/bin/mysql

Une autre méthode, alternative au lien symbolique, consiste à créer un fichier .profile, fichier caché, dans son répertoire de home du mac /users/nom, de façon à y renseigner le PATH, à savoir le chemin de recherche des fichiers exécutables de MySQL

export PATH=/Applications/MAMP/Library/bin:$PATH

On peut taper . .profile dans le terminal pour relancer son profile

alexmacapple:~ alex $ . .profile

puis écho $PATH pour s’assurer que la ligne a bien été prise en compte

alexmacapple:~ alex$ echo $PATH

On peut aussi créer un fichier .my.cnf à la racine du dossier user, et mettre le code suivant :

alex$ sudo pico .my.cnf
[client]
user=root
password=root

On pourra alors désormais taper un simple mysql -u root -p pour se connecter à MySQL en ligne de commande

Injecter un dump SQL :

mysql -uUSER -pPASS spip_db < mabase_db.sql 
cat Fichier.sql | mysql -uroot --password=root --database=nombase

Faire un sauvegarde SQL

mysqldump --opt spip > sauvegarde_spip.sql

ou

/Applications/MAMP/Library/bin/mysqldump -h localhost -u root -proot -rnomdemabase.sql nomdematable

ou encore

mysqldump -h localhost -u root -proot -rnomdemabase.sql nomdematable

4. Changer le password de MySQL :

Par défaut le login et le mot de passe de MySQL est root/root. Si vous n’ouvrez pas le serveur MAMP vers l’extérieur, aucun souci, vous pouvez laisser comme cela. En revanche si vous voulez l’ouvrir sur le monde extérieur, et que votre serveur est accessible sur internet, il sera préférable de changer le mot de passe attribué par défaut pour des raisons de sécurité.

Pour changer le mot de passe MySQL, il faudra faire deux choses :

1. Utiliser la ligne de commande suivante dans le terminal

/Applications/MAMP/Library/bin/mysqladmin -u root -p password [NEWPASSWORD]

2. Prendre un éditeur de texte pour modifier l’ancien mot de passe à quatre endroits différents :

/Applications/MAMP/bin/phpMyAdmin-X.X.X/config.inc.php
ligne 86

$cfg['Servers'][$i]['password'] = 'root';

/Applications/MAMP/bin/mamp/index.php
ligne 15

$link = @mysql_connect(':/Applications/MAMP/tmp/mysql/mysql.sock', 'root',
'root');

/Applications/MAMP/bin/stopMysql.sh
Remplacer -proot par -pvotrepass

On peut également le changer dans la page d’accueil de MAMP
/Applications/MAMP/bin/mamp/French/mamp.inc.php
ligne 16 et ligne 23

5. Ouvrir MAMP automatiquement au démarrage du mac

Allez dans le menu pomme, puis Préférences Système

Puis dans l’onglet compte/ouverture, rajouter MAMP en ouverture automatique de session

Cliquer sur ajouter

Et c’est tout bon. Si votre mac s’éteint, le MAMP s’ouvrira automatiquement tout seul à la prochaine ouverture.

On peut même, toujours dans les préférences system et dans l’onglet économiseur d’énergie cocher la case démarrer automatiquement le mac après une panne de courant.

V/ Mettre à jour sa version de MAMP en toute tranquillité, sans rien perdre de ses sites et de ses bases de données SQL

-  1. On quitte l’application MAMP ce qui a pour effet d’arrêter les serveurs Apache et MySQL, et on arrête les process pouvant tourner grâce au moniteur d’activité.
-  2. On Quitte l’application MAMP ce qui a pour effet d’arrêter les serveurs Apache et SQL
-  3. On renomme dans Applications le dossier MAMP en MAMP.old
-  4. On lance la nouvelle installation de MAMP que l’on aura au préalable téléchargée sur le site officiel
-  5. On va copier certaines données de MAMP.old dans MAMP :
Copier le contenu du sous-dossier /htdocs vers MAMP (Si vos sites sont dans ce Document Root). Copier le contenu du sous-dossier /db/mysql vers MAMP (Mais pas les sous-dossiers mysql/, performance_schema/ et le fichier mysql_upgrade_info)
-  6. Copier le fichier /conf/apache/httpd.conf vers MAMP si vous aviez modifié le fichier de conf (faire un diff pour voir ce qui a changé dans la nouvelle version et les répercuter)
-  7. Copier le fichier /bin/php/[Votre version]/conf/php.ini vers MAMP si vous aviez modifié le fichier (faire un diff pour voir ce qui a changé dans la nouvelle version, répercuter notamment le memory limait)
-  8. Relancer MAMP dans sa nouvelle version. La mise à jour est terminée

(Et si on est un brin para-no :-), on peut également, avant de mettre a jour le MAMP, faire un backup manuel de toutes les bases sql dans PhpMyAdmin, mais de toute façon pas de panique, on pourra toujours revenir à son ancien MAMP en supprimant le .old et en renommant le nouveau MAMP, puis en fermant les process.)

VI/ En cas de problèmes

Il est possible que le MySQL de votre version de MAMP parfois refuse de se lancer ou ne fonctionne plus. Il convient tout d’abord de fermer MAMP.

Il faut ensuite ouvrir le moniteur d’activité (Applications/Utilitaires/Moniteur d’activité/) et de fermer le ou les process sql qui pourraient être en conflit.

On peut également aller directement dans le terminal et taper le code suivant d’un seul coup, même si personnellement je préfère la méthode avec le moniteur d’activité qui liste précisément les process SQL ouverts qui pourraient rentrer en conflit

ps aux | grep mysql
lsof -i
killall -9 mysqld

On redémarre ensuite le mac (pas obligatoire mais c’est une bonne veille habitude), on ouvre le MAMP et les serveurs devraient redémarrer.

On peut aussi, par précaution, bien que cela ne soit pas forcément utile faire un chmod récursif 777 sur MAMP pour écarter tout problème de permission (sinon Pomme i, et donner les droits en écriture pour tous les répertoires)

# sudo chmod -Rfv 777 /Applications/MAMP

Lire la suite :
Ouvrir MAMP sur l’extérieur : Vhost, routeur, Domaine et DNS

Nous n’avons pas abordé ici la question de la mutualisation, car nous ne l’avons jamais pratiqué, et surtout parce qu’un très bon article fait par Maïeul existe déjà.
http://geekographie.maieul.net/Gere...

Discussion

8 discussions

  • 3
    fraktale

    Bonjour,

    Je viens d’installer spip2-1-10 avec MAMP3.2.1
    L’installation s’est bien passé mais une fois cette installation terminé : écran blanc.
    J’ai testé avec Spip3 et il n’y a aucun soucis.

    D’ou peut venir le problème ?

    Fraktale

    • Bonjour,

      C’est peut-être dû à une version de PHP « trop récente » : >=5.4
      il faudrait faire la mise à jour de la version de SPIP 2.1.10 en SPIP 2.1.27 pour ne plus avoir de soucis notable.

    • Merci de ta réponse. Je vais essayer cette solution.

    • Alexandra

      Il faudrait voir ce que disent les logs dans tmp/logs de répertoire de site.

      Tu peux aussi consulter les logs apache.

      il faudrait également vérifier dans ton php.ini le memory_limite et le mettre entre 256 et 512 (en local on peut se faire plaisir).

      Tu peux aussi augmenter le max_excution time.

      Enfin, dans config/mes_options.php tu peux rajouter le code suivant qui devrait te rendre les erreurs plus verbeuses :

      <?php
      // REPORTING DES ERREURS LE PLUS VERBEUX POSSIBLE EN PREPROD
      error_reporting(E_ALL^E_NOTICE);
      ini_set ("display_errors", "On");
      define('SPIP_ERREUR_REPORT',E_ALL^E_NOTICE);
      define('SPIP_ERREUR_REPORT_INCLUDE_PLUGINS',E_ALL^E_NOTICE);
      ?>

    Répondre à ce message

  • Je dispose d’un site en local sous wordpress et mamp ; j’ai installé joomla et ai mis le dossier sous htdocs tout va bien, sauf que maintenant wordpress ne veut plus s’ouvrir (url introuvable) alos qu’il est aussi sus htdocs ????

    Help urgent

    Nat

    Répondre à ce message

  • CSS HS dans l’espace privé

    Bonjour,

    Plusieurs personnes ont indiqué avoir rencontré ce problème (les liens ci-dessous proposent des captures d’écran du souci rencontré) qui empêche toute utilisation de l’espace privé de SPIP... Gênant.
    http://contrib.spip.net/SPIP-3-0-4158#forum468211
    http://comments.gmane.org/gmane.comp.web.spip.user/186105

    J’ai eu le même problème ces jours-ci sur une installation de SPIP 3.0.11 avec MAMP 2.2 qui propose PHP 5.5.3.

    Une réponse évoque un bug dans PHP 5.5.3 et 5.5.4. Un patch à intégrer dans un fichier de SPIP proposé ici
    http://core.spip.org/projects/spip/repository/revisions/20867
    n’a rien réglé pour moi.

    En revanche, le simple retour à la version 5.2.17 de PHP avec MAMP 2.2 a fonctionné.

    J’ai aussi noté qu’avec la version 5.2.17 de PHP, l’affichage de la page d’accueil de MAMP s’effectuait de façon instantanée alors qu’il y avait de longs délais (voire pas d’affichage du tout de cette page d’accueil) avec la version 5.5.3 de PHP.

    Il faudra voir ce qu’il en sera avec la version 5.5.5 de PHP qui n’est pas disponible sur le site de MAMP (et que je ne saurais pas injecter tout seul dans l’appli... ).

    Bonne journée,

    Haliimyn

    Répondre à ce message

  • 1
    pauline

    Bonjour,

    Je suis novice, et après ma formation de webmaster (sous windows) je souhaite retravailler sur mon site depuis mon mac.
    En installant Mamp, j’ai fait une erreur, pour le login, au lieu de mettre root, j’ai pensé qu’il fallait que j’en créé un nouveau et j’ai donc mis un nouveau login. J’ai réussi à entrer sur spip sur le moment, et après en être sortie, impossible de reprendre la main et le message suivant apparaît :
    "Site en travaux
    Attention : un problème technique (serveur SQL) empêche l’accès à cette partie du site. Merci de votre compréhension.« dès que je vais à l’adresse : »http://localhost:8888/spip.php?page=login&url=%2Fecrire%2F" c’est-à-dire en rajoutant /ecrire.
    J’ai désinstallé et reinstallé plusieurs fois MAMP et le problème me résite, je suis démunie, j’aimerais pouvoir réinstaller spip.

    Merci de votre aide précieuse,

    Pauline

    • Alexandra

      Bonjour Pauline, sur un vrai serveur pas local, il est effectivement préférable de changer le login et le mot de passe root. Mais en local, pour faire simple, on peut très bien rester en root/root. Si on ouvre sur de l’extérieur, ca reste du local. Vous pouvez réinstaller un MAMP tout propre ca redemarra.

      Si vous tenez à changer le mot de passe, il y a plusieurs fichiers à modifier dans le MAMP pour que tout fonctionne.
      Cf http://www.mamp.info/en/documentation/faq.html

      taper dans le terminal

      /Applications/MAMP/Library/bin/mysqladmin -u root -p password monmotdepasse

      Prendre un éditeur de texte pour modifier l’ancien mot de passe à quatre endroits différents :

      /Applications/MAMP/bin/phpMyAdmin-X.X.X/config.inc.php 
ligne 86
      $cfg[’Servers’][$i][’password’] = ’root’ ;

      /Applications/MAMP/bin/mamp/index.php
ligne 15
      $link = @mysql_connect(’ :/Applications/MAMP/tmp/mysql/mysql.sock’, ’root’,
      ’root’) ;

      /Applications/MAMP/bin/stopMysql.sh
Remplacer -proot par -pvotrepass

      On peut également le changer dans la page d’accueil de MAMP
/Applications/MAMP/bin/mamp/French/index.php
ligne 16 et ligne 23

      Mais le plus simple est peut être de repartir sur un MAMP de base.
      Il se peut que SQL refuse de redarrer. Il faut alors ouvrir le moniteur d’activité dans applications utilitaires, pour killer (forcer à quitter) tous les process SQL ouvert.

      Bon developpement sous mac :-)
      Alexandra

    Répondre à ce message

  • 2
    christianD.

    Bonjour,

    Avec Spip 3.0, Mamp va chercher Sqlite, la version 3 en l’occurence. Comment peut-on visualiser et manipuler les bases comme avec Sql ?

    Merci d’avance.

    • d’une part on peut très bien être en mysql sous spip 3 ;-) d’autre part vous pouvez utiliser ds logiciels comme sqlitemanager ou autre ...

    • christianD.

      Bonjour Maïeul,

      Merci pour ta réponse... et bonne année ;-).

      J’ai effectivement tenté de rester en sql, mais sur le serveur distant, je n’avais pas fait attention lors du passage à Spip 3.0, je suis en Sqlite3. Du coup, cette différence de Sql fait que je n’arrive pas à restorer une sauvegarde distante en local.

      Je vais passer par sqlitemanager s’il n’y a pas de possibilité de rester sur sql que je commençais à maitriser.

    Répondre à ce message

  • 6

    Merci pour votre contribution.

    J’ai installe MAMP et SPIP 3.0,4.

    Comme je suis un débutant complet, j’utilise pour le moment Spip distr avant d’essayer quelque chose de plus personnalisé.

    J’arrive à téléverser des documents pdf dans mes articles mais les vignettes correspondantes qui apparaissent bien dans l’espace privé ne s’affichent pas dans mon site et j’obtiens le message :
    vérifier les droits d’écriture
    Le système a rencontré une erreur lors de l’écriture du fichier tmp//.ok. Veuillez, en tant qu’administrateur du site, vérifier les droits d’écriture sur le répertoire ecrire/tmp. Je ne trouve pas ce repertoire et je ne saurais pas le modifier.

    D’apres le fil http://forum.spip.net/fr_231855.html ca proviendrait de la configuration du serveur. Dans mon cas, c’est MAMP. Est-ce que que quelqu’un a le même problème et surtout y a-t-il une solution ?

    Merci par avance.

    Mac OSX 10.4,11
    Local MAMP 1.9.6 version gratuite

    • Bonjour un pomme i sur IMG tmp local et config, puis déplier la flèche partage et permissions et tout mettre en lecture et en écriture. Il faut appuyer sur le petit cadenas, mettre son passe admin, et sur la petite roue en bas appuyer sur appliquer aux élements inclus.
      Cela revient à faire un chmod 777récurssif via l’interface graphique sur les répertoires qui doivent avoir les bons droits en écriture.
      Tu peux aussi ouvrir ton terminal et taper /Applications/MAMP/htdocs/tonsite, puis faire chmod 777 config/ IMG/ local/ tmp. C’est un probleme de droits que tu as eu, SPIP ne pouvant pas créer ses fichiers de cache.

    • Tu peut utiliser batchMod qui te facilitera les CHMOD : pratique aussi quand tu restaure un dossier utilisateur et que les droits sont changés.

      BatchMod

      En ligne de commande :

      ## glisser le dossier sur la fenetre du terminal te fera apparaitre le chemin depuis la racine de ton mac
      ## sudo passe en Super User si ton utilisateur n'as pas les droits sur les dossiers (chez moi c'est souvent car le dossier web appartient a Apache)
      sudo chmod -R 777 /chemin/vers/dossier

      si ça peut aider ... @++

    • Bonjour et merci pour ces deux réponses.

      Pour commencer, j’ai voulu essayer la méthode d’Alexandra
      mais je ne trouve pas de dossier IMG tmp local ou IMG config.

      Le dossier IMG n’est pas verrouillé et je suis autorisé en lecture et écriture

      Sur mon terminal, il n’y a rien d’écrit, j’hésite d’écrire moi-même quelque chose et de ne pas pouvoir réparer les erreurs.

      Auriez-vous une autre suggestion ?

    • Bonjour,

      le dossier tmp est celui qui est à la racine de votre répertoire spip, il n’éxiste pas dans /ecrire.

      Pour spip :
      -  dans configuration>fonctions avancées : vérifiez que vous avez sélectionner une méthode de génération des vignettes (convert, image magik, GD) personellement j’utilise GD le plus souvent.

      -  ensuite vérifiez dans le même onglet que vous avec activer la génération automatique des vignettes

      -  vivez le dossier /tmp, et /local situé à la racine de votre site spip

      -  vérifiez que il n’y a pas .htaccess à la racine qui gênerait ou commentez le pour le test (en remplaçant le . par _ par exemple)

      Pour MAMP (que je n’utilise pas : j’utilise le serveur intégré a mac OSX qui est beaucoup plus fiable et pour moi plus facile a configurer car c’est un unix, et plus proche des serveur des hébergeurs)
      -  vérifiez la version de php qui est dans MAMP et les extensions qui sont installé pour le traitement de images (gd,imagik,convert) en affichant le phpinfo() surement disponible dans la configuration de votre MAMP, ou dans spip en saisissant dans l’url : ?exec=info

      apparemment la librairie gd est disponible dans votre distribution de MAMP et vous pouvez passer en PHP5.3 qui sera mieux pour SPIP3 : http://www.mamp.info/en/documentation/releases.html

      et pour finir juste un conseil, passez votre mac en 10.5.9 c’est la dernières version à jour de macOS pour votre mac qui doit être de type powerPC : beaucoup des logiciels ne sont plus mis à jour pour 10.4, et de plus pour les PPC (y compris php, java ... ), c’est d’ailleurs ce qui à sonné la fin pour cette architecture de processeurs -> merci Oracle.

      Bonnes continuations

    • Merci de nouveau pour ces infos détaillées.

      Ma configuration actuelle (mac mini 2006, Mac OSX 10.4.11) ne me permet pas de passer à OSX 10.5. Ça me limite aussi à MAMP 1.9.6 version gratuite (PHP 5.2.17) et pas de possibilité de passer à PHP5.3 (possible ? en prenant la version payante mais je n’en vois pas l’utilité sur du « vieux » matériel(6 ans seulement).

      J’ai bien vérifié dans configuration avancée de Spip que GD était activée et présente dans MAMP. D’ailleurs c’est le seul choix qui m’est proposé pour la génération automatique des miniatures.

      Mais l’affichage des vignettes des documents ne se fait toujours pas.

      Je ne crois pas être le seul a utiliser du vieux matériel. D’autres personnes ont-elles les mêmes difficultés que moi ?

    • Bonjour,

      NON, 6ans c’est pas vieux et ça fonctionne, Des « vieux » j’en ai plein ma maison et qui tourne sous mac osx10.5.8 (G4 mirror drive, un G5 2 ghtz, imac DV400, G4 400 ) ... chuis pas un bobo iphonisé, et je change de machine tous les 10ans lol
      https://discussions.apple.com/thread/2772750?start=0&tstart=0.
      Par contre combien avec vous de mémoire, car en dessous d 1 go on ne fait plus rien tourner de nos jours : que ce soit un mac ou un pc ...

      Comme dis précédemment, je n’ai jamais aimé ni utilisé (ni vu l’utilité) de Mamp ou Xamp , mac os est livré avec un serveur apache et php et je n’ai jamais eut ce type de problèmes avec, je peut vous rédiger et vous donner un lien pour une notice de configuration installation si vous le souhaitez sous 10.4, ou 10.5 par contre faut toucher un peut au terminal ;-) mais vous en sortirez grandi ^^ !.

    Répondre à ce message

  • 3

    bonsoir, peut être que vous pourriez m’aider.
    J’utilise mamp pour créer mes sites en php sur mon serveur local.
    J’ai placé mes sites dans le dossier site/mon_site/
    dans le dossier mon site j’ai mon index.php
    le problème est le suivant :
    je lance mamp et tout va bien les serveurs sont lancés.
    Quand je me rends sur l’url http://localhost:8888/mon_site/index.php au lieu de m’interpréter la page web il me télécharge le fichier.php.
    Depuis deux jours je recherche une solution sur différents sites mais pour l’instant pas de réponses efficaces, ce qui marche pour les autre ne marche pas pour moi :s

    Merci d’avance et à très vite

    • Alexandra

      Je ne saurais trop quoi vous répondre. C’est très étrange que le php ne soit pas interprété si les serveurs se lancent bien au démarrage. Le port est-il bien 8888 et le document root est-il bien configuré ? êtes vous sur de votre code php. Commencez peut être avec juste un echo de base pour voir si ca s’affiche mieux. Sinon regarder du coté des logs de MAMP voir si ca cause. Désolée

    • Merci pour votre réponse oui le fichier .php fonctionne car mon site est déjà en ligne http://www.surfingbiarritz.com

    • voila ce que j’obtiens

    Répondre à ce message

  • 1

    Belle série d’articles, peut-être à compléter par un pas d’installation de SPIP une fois MAMP configuré (je veux bien aider). Avant j’activais PHP et installais Mysql, mais pour ce dernier cela changeait avec les version de Mac OS, je ne regrette pas d’être passé à MAMP (et on a en plus gd, yaz et d’autres librairies installées).

    Dans le temps MAMP était livré avec un widget qui permettait de démarrer Apache et Mysql sans lancer MAMP, il a disparu de la livraison mais fonctionne toujours (MAMP 2.05 + Snow léopard).

    Personnellement j’ai choisi le dossier « Sites » du Mac pour mettre les dossiers de projets de sites. Cela permet de faire les mises à jour en toute tranquillité. Il faut renommer le fichier index.html qui s’y trouve et les dossiers des différents projets sont accessibles par http://localhost:8888/ ou directement http://localhost:8888/mom_projet/ ou toute autre url du même type suivant ce qu’on a choisi. (Une IP fixe permet d’accéder facilement depuis un PC pour debugage sous IE :-( ).

    Pour la base de données j’ai choisi aussi de la déporter dans mon dossier « Documents » avec un lien symbolique. Pour cela j’utilise Symboliclinker qui installe un Service pour créer facilement des liens symboliques (les alias ne fonctionneraient pas dans ce cas). Déplacer le dossier /MAMP/bd/ vers le dossier « Documents » (on peut au besoin alors le renommer « bd-MAMP » pour plus de clarté). Clic-droit et dans les services choisir « Créer un lien symbolique ». Il se crée alors à coté du dossier déplacé, le remettre alors dans le dossier MAMP (le lien symbolique) et le renommer au besoin « bd ». Ça fonctionne parfaitement chez moi sur plusieurs machines (fixe et portable).

    En utilisant le dossier « Sites » et le lien symbolique pour le dossier « bd », ça permet de faire ses mises à jours de MAMP en toute tranquillité (si on n’a rien modifié d’autre), c’est cohérent avec la place des données. Si on a un utilitaire de sauvegarde automatique type Time-machine ou autre on garde les réglages génériques qu’on a pour ses données autres.

    • Alexandra

      Merci Dominique pour ce complément d’info et ce retour. Bonne idée pour un pas à pas d’installation de SPIP une fois MAMP configuré. Ca pourrait faire l’objet un quatrième article. On essaye de se coordonner et j’y réfléchi aussi de mon côté.

    Répondre à ce message

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