Version de PHP
Aprés avoir tester en local, sur ma machine la galerie Web ZenPhoto, j'ai souhaité faire l'installation sur mon hébergement (mutualisé) chez OVH, or, lors de l'installation j'ai eu la désagréable surprise de voir que chez ovh par défaut c'est PHP4 qui est utilisé.
J'ai donc suivi le guide OVH pour passer le site en PHP 5 : à la racine du site, j'ai placé un fichier .htaccess dans lequel j'ai écrit la ligne suivante :
Configuration de PHP
Aprés avoir mise en place PHP 5 pour ZenPhoto, il est nécessaire de définir certaines règles php, pour cela je vais modifier le fichier .htaccess précédement créé :SetEnv REGISTER_GLOBALS 0
SetEnv MAGIC_QUOTES 0
SetEnv MBSTRING.LANGUAGE UTF-8
SetEnv mbstring.internal_encoding UTF-8
Modification de ZenPhoto
Ensuite, le plus gros problème, en effet, ZenPhoto cherche a changer les permissions sur certains repertoires, cependant OVH n'accepte pas des permissions au dela de 0755, j'ai donc modifier certains fichiers de ZenPhoto.
Tout d'abord, le fichier zp-core/setup.php :
A la ligne 42, j'ai remplacé la ligne : $chmod = 0777; par $chmod = 0755;
A la ligne 162, j'ai remplacé la ligne : $chmod = 0777; par $chmod = 0755;
Ensuite, si le fichier existe il faut modifier le fichier : zp-data/zp-config.php
A la ligne 75, remplacer 777 par 755 comme suit :
Permissions sur les répertoires et fichiers :
Définissez vous même les droits sur les repertoires. Pour cela je me suis connecté en SSH et dans le répertoire de zenphoto, j'ai tapé la ligne suivante :puis j'ai changé les permissions sur le fichier .htaccess :
Vous pouvez également définir les permissions à l'aide de votre client FTP habituel.
Les règles de réécriture de ZenPhoto
Enfin, ZenPhoto utilise des règles de ré-écriture apache, mais comme nous avons modifier le fichier .htaccess, nous allons devoir le faire à la main, voici mon fichier :
SetEnv PHP_VER 5
SetEnv REGISTER_GLOBALS 0
SetEnv MAGIC_QUOTES 0
SetEnv MBSTRING.LANGUAGE UTF-8
SetEnv mbstring.internal_encoding UTF-8
RewriteEngine On
RewriteBase /
RewriteRule ^/admin/?$ zp-core/admin.php [R,L]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^/albums/?(.+/?)?$ $1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^/.*$ - [L]
RewriteRule /index\.php$ index.php [L,QSA]
RewriteRule ^/page/([0-9]+)/?$ index.php?page=$1 [L,QSA]
RewriteRule ^/page/([A-Za-z0-9_\-]+)/?$ index.php?p=$1 [L,QSA]
RewriteRule ^/page/([A-Za-z0-9_\-]+)/([0-9]+)/?$ index.php?p=$1&page=$2 [L,QSA]
RewriteRule ^/(.*)/page/([0-9]+)/?$ index.php?album=$1&page=$2 [L,QSA]
RewriteRule ^/(.*)/page/([A-Za-z0-9_\-]+)/?$ index.php?album=$1&p=$2 [L,QSA]
RewriteRule ^/page/search/fields([0-9]+)/(.*)/([0-9]+)/?$ index.php?p=search&searchfields=$1&words=$2&page=$3 [L,QSA]
RewriteRule ^/page/search/fields([0-9]+)/(.*)/?$ index.php?p=search&searchfields=$1&words=$2 [L,QSA]
RewriteRule ^/page/search/archive/(.*)/([0-9]+)/?$ index.php?p=search&date=$1&page=$2 [L,QSA]
RewriteRule ^/page/search/archive/(.*)/?$ index.php?p=search&date=$1 [L,QSA]
RewriteRule ^/page/search/tags/(.*)/([0-9]+)/?$ index.php?p=search&searchfields=4&words=$1&page=$2 [L,QSA]
RewriteRule ^/page/search/tags/(.*)/?$ index.php?p=search&searchfields=4&words=$1 [L,QSA]
RewriteRule ^/page/search/(.*)/([0-9]+)/?$ index.php?p=search&words=$1&page=$2 [L,QSA]
RewriteRule ^/page/search/(.*)/?$ index.php?p=search&words=$1 [L,QSA]
RewriteRule ^/pages/?$ index.php?p=pages [L,QSA]
RewriteRule ^/pages/(.*)/?$ index.php?p=pages&title=$1 [L,QSA]
RewriteRule ^/news/?$ index.php?p=news [L,QSA]
RewriteRule ^/news/([0-9]+)/?$ index.php?p=news&page=$1 [L,QSA]
RewriteRule ^/(.*)/image/(thumb|[0-9]{1,4})/([^/\\]+)$ zp-core/i.php?a=$1&i=$3&s=$2 [L,QSA]
RewriteRule ^/(.*)/image/([^/\\]+)$ zp-core/i.php?a=$1&i=$2 [L,QSA]
RewriteRule ^/(.*)/album/(thumb|[0-9]{1,4})/([^/\\]+)$ zp-core/i.php?a=$1&i=$3&s=$2&album=true [L,QSA]
RewriteRule ^/(.*)/?$ index.php?album=$1 [L,QSA]
La première ligne du fichier est Obligatoire car ZenPhoto teste le n° de version du fichier.
Normalement à ce stade vous pouvez valider le setup.
Troubleshootings
- J'ai du souvent redéfinir les droits sur les dossiers, et sur le fichier .htaccess. (voir la section dans cet article).
- J'ai pas réussi à définir mbstring.internal_encoding avec SetEnv ...

J'ai découvert une petite galerie web, assez simple et trés prométeuse :













Commentaires
Salut, j'ai pas encore tout appliqué, mais ça me semble bizarre de devoir changer les droits de fichiers.
Pour le momentm juste après le dezippage j'ai une grosse erreur 500. J'ai mis ton .htaccess à la racine, mais ça change rien. Je vais voir ce que donnent les modifs sur les droits, mais, d'un autre côté j'ai fait l'install automatique de OVH, et dans leurs fichiers, tes modifications n'apparaissent pas.
Alors, je suis avec la dernière version de ZENphoto (1.2.8). Après avoir juste :
1/ mis en place le .htaccess que tu préconises (même si seule les deux premières lignes marchent en fait)
2/ fait le chmod sur les fichiers
L'install a pu se passer. En plus, l'installeur demande quelle genre de restriction on veut (stricte ou pas stricte). Donc je pense que ta modif du fichier setup.php devient inutile. Je continue, j'espère que j'aurais raison
Salut,
En fait lorsque j'ai fait le tutoriel sur la configuration de ZenPhoto sur un hébergement mutualisé OVH, OVH n'avait pas encore d'installation automatique de ce produit, alors je suis parti des sources téléchargées sur le site de ZenPhoto.
Il faudra que j'essaie d'installer via l'install OVH, mais bon, là ca marche pour moi alors ... pas de suite.
Bon courage pour la suite !
Mimiz
Bonjour,
Merci pour ce post. En fait, j'utilise zenphoto (1.2.8) sur deja 3 hebergeurs sans aucun souci.
Je dois l'installer sur OVH (hebergement mutualisé). Et ca plante tres rapidement...
Il m'aura fallu deja 1 heure pour uploader les fichiers (et oui, on depasse vite le nombre de connexions simultanées meme si son client ftp est bien parametre...).
Une fois cette epreuve passée, j'ai lancé zenphoto, je suis arrivé sur la page de setup et suis retourné immédiatement modifier le htaccess genere par zenphoto pour passer en version 5 de php, desactiver le register globals, les magic quotes et passer en utf8.
Un petit F5 sur la page de setup... oups...Je tombe sur une erreur 500.
Petite recherche sur le net... et je termine sur ton post qui semble presenter une solution qui marche...
J'ai donc modifié le htaccess en ajoutant un / devant la page a rediriger et je tombe toujours sur une erreur 500, pas moyen de retrouver ma page de setup.
Aurais-tu une idée de comment faire? Je dois vider mon repertoire et repasser une heure (si j'ai de la chance) a uploader zenphoto?
Une petite precision, les modifications tu les fais avant d'ouvrir la page setup? si c'est le cas, ou se trouve le fichier htacces a ce moment la?
Merci pour ton aide
Desolé pour le post precedent
Effectivement, ton htaccess fonctionne tres bien. Apres avoir ecrit sur ton blog, j'ai uploadé a nouveau ton htaccess et ca a fonctionné, j'ai enfin reussi a voir ma page setup !!!
Zenphoto affichait quand meme une petite erreur sur le parametrage des caracteres qui apparement n'etaient pas en UTF8, j'ai alors modifié ton htacces et ajoute les lignes suivantes que j utilise sur mes autres hebergement :
php_value mbstring.language "UTF-8"
php_value mbstring.internal_encoding "UTF-8"
j upload le htaccess... et bien entendu... retour a une erreur 500
je m empresse de remettre le htaccess tel quel... et malheureusement je retombe sur une erreur 500...
J'ai l impression qu il faut un peut de temps a OVH pour prendre en compte un htaccess...
J'espere que j'arriverais a revoir cette page setup un jour
Bonjour,
Merci d'abord car cette page m'a bien aiguillée sur l'origine de cette fameuse erreur 500 lors d'une installation de Zenphoto chez OVH.
J'avais alors essayé d'installer la version 1.2.8 de Zenphoto et j'ai eu assez de mal j'avoue...
J'ai repris une installation complète de Zenphoto 1.2.9 cette fois et il semble que le problème de droits sur les fichiers ne provoquent plus d'erreur 500.
Par défaut, le "setup.php" affiche une politique de droits à "755" ce qui est le maximum autorisé par OVH et on récupère cette erreur 500 apparemment seulement si on tente de mettre plus...
Par précaution, j'ai préféré de nouveau tout mettre à "705" puisque ça semble suffire.
Si ça peut aider, j'ai résumé mon installation ici : http://wiki.hedus.fr/outils/zenphot...
Encore merci donc pour cette aide précieuse et bon courage aux futurs installeurs...
Hedus