Officiellement, requiert PHP 4.3 ou plus, et MySQL 4.0 ou plus, c’est en tout cas ce qui est marqué sur la page de téléchargement de wordpress-fr.net

En réalité depuis la 2.9 toute récente, il faut au minimum MySQL 4.1.2 sinon l’upgrade ne peut pas être fait.

Pour la version de PHP, il est plus que temps, si vous ne l’avez pas déjà fait, de passer à la version 5.
D’abord parce que PHP 4 n’est plus supporté officiellement. De nombreux hébergeurs sont frileux, ou ne vous forcent pas la main, mais tout hébergeur sérieux DOIT absolument vous proposer une solution php5.

Ce que fait WordPress, c’est qu’il utilise les nouvelles fonctions PHP5, et qu’il cherche, quand elles n’existent pas, une solution dégradée, une fonction de remplacement dans une « couche » de compatibilité. Un peu comme les hacks css pour IE6.

Cela ralentit considérablement le site, et cela ne fonctionne pas toujours. Et à partir de la 2.9 il y a des fonctionnalités (notamment dans le traitement des images) qui sont carrément indisponibles pour les vieilles versions de PHP.

Pour savoir sous quelle version de php vous êtes, le plus simple est de charger à la racine de votre site un petit fichier, que vous appellerez machintrucchouette.php avec la seule instruction phpinfo() , ce qui vous permet d’afficher votre config.

Si vous êtes en php4, la solution pour passer en php5 dépend d’un hébergeur à l’autre. Généralement elle passe par la modification du fichier .htaccess

L’instruction générale étant
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php

Dans les hébergeurs francophones, Free et OVH se distinguent.
Pour Free, il faut rajouter la ligne
php 1

et pour OVH
SetEnv PHP_VER 5

Et si vous ne voyez pas le fichier .htaccess ?
C’est normalement pour Windows un fichier invisible. Selon votre version de windows il pourra même vous être impossible d’enregistrer directement un fichier.htaccess, car une extension qui n’est pas reconnue.
Dans ce cas, vous l’enregistrez comme un fichier htaccess.txt et vous le renommez une fois chargé sur le serveur. Certains logiciels ftp, comme Filezilla, peuvent les masquer, il suffit d’aller dans serveur, forcer l’affichage des fichiers cachés
Personnellement, je l’ai paramétré comme une extension reconnue par Dreamweaver (Editions, préférences, types de fichiers) ce qui me permet de travailler dessus sans souci

Certains réglages de sécurité par défaut sont différents entre php4 et php5

Vous pouvez le modifier dans votre fichier php.ini (à mettre, comme le .htaccess à la racine de votre site) en rajoutant la ligne
register_globals=on
mais c’est une solution d’urgence, et il faut surtout faire évoluer vos scripts, car côté sécurité ce n’est pas bon.
Voici un article du jdn expliquant ces modifs title, vous voyez qu’il date de 2007, alors honnêtement, il est temps de s’y mettre !!

L’autre réglage est sur l’inclusion de fichiers externe.
Il faut aussi modifier le php.ini, avec comme instruction
allow_url_include = 1
allow_url_fopen = 1

Mais là aussi, soyez sûrs de votre code, un petit exemple des risques .

12 commentaires

  1. Hello,

    Joli résumé ! Php5 n’est toutefois pas forcément nécessaire pour utiliser WordPress, même si c’est préférable de l’avoir.

    Et si vous êtes sur OVH avec une Bdd sous Mysql4, voici la manip’ à faire pour passer sous Mysql5 : https://www.ovh.com/fr/g1957.mutualise_comment_migrer_votre_base_de_donnees_de_sql_4_vers_mysql_55

    Répondre à Fabien
  2. Bonjour,

    J’ai fait ce que vous préconisez, y compris le phpinfo(). Mais où s’affiche la config ? J’ai également installé les trois lignes requises (sous OVH) pour passer de la php4 à php5. Résultat, une page admin en charabiat html, avec pleins de messages d’erreur. J’ai effacé les lignes de commandes dans .htaccess et tout est rentré dans l’ordre. Mais je ne sais pas ce qui s’est passé. Quelqu’un peut me le dire.
    Merci.

    Répondre à Gatover
  3. Bonjour, pour le support, c’est plutôt sur wordpress-fr.net (surtout pour un hébergeur que je ne pratique pas)

    Cela dit, dans mon article, il n’y a qu’une seule ligne pour passer en php5 sous OVH, pas trois :)

    Et pour voir la confif, c’est simple, une fois que vous avez placé à la racine de votre site le fichier contenant comme instruction le phpinfo() et qui va, par exemple s’appeler toto.php, vous l’affichez dans votre browser (monsite.com/toto.php) et votre config détaillée s’affichera.

    Répondre à Marie-Aude
  4. Le petit messager Auteur janvier 13, 2010 (10:03 )

    Merci beaucoup pour cet article sur PHP, complet et facile à comprendre !

    Répondre à Le petit messager
  5. Bonsoir,
    Je n’arrive pas à me connecter à la base de données.
    J’ai tenté via le fichier de configuration wordpress : erreur
    J’ai (via FTP) récupéré la page wp-config.php vérifié les données tout est OK
    Et pourtant j’ai toujours le message :
    Error establishing a database connection

    Il y a-t-il un problème spécifique à l’hébergement perso chez sfr ?
    Merci pour votre aide
    jeanPierre

    Répondre à jeanPierre
  6. Etes vous sûr d’avoir une base de données ? Avec des identifiants spécifiques, différents de votre ftp ? Selon les hébergements, ce n’est pas toujours le cas.

    Répondre à Marie-Aude
  7. Bonjour et merci pour votre réponse
    Oui j’ai les identifiants, j’ai créé (et nommé) une base de données via mon interface SRF qui m’a donné un nom d’utilisateur et un pass spécifiques à celle-ci. Ce sont ces identifiants que j’ai retranscrit (sans succès) dans la page wp.config.php
    Lorsque je vais sur : http://sqladmin.sfr.fr/ avec le login et le pass indiqué ci-dessus je vois bien ma base de données. J’ai comme indications (entre autres) :
    phpMyAdmin : Version : 3.2.4deb2.1
    MySQL : Version du serveur : 5.0.32-Debian_7etch5-log
    Jeu de caractères pour MySQL : UTF-8 Unicode (utf8)
    Serveur web : Apache/2.2.3 (Debian) PHP/5.2.0-8+etch13
    Version du client MySQL : 5.0.32
    Extension PHP : mysqli

    Merci pour votre aide
    jean pierre barré

    Répondre à jeanPierre
  8. Et c’est bien le bon serveur ? localhost ou autre chose ?
    Si oui, j’avoue que ne connaissant pas cet hébergeur, ma science s’arrête là… et je vous renvoie sur le forum wordpress au cas où d’autres le connaitraient :)

    Répondre à Marie-Aude
  9. Merci pour vos articles.

    En lisant ci dessus Gatover et en se mettant dans la peau d’un débutant qui en serait à son deuxième article, concernant phpinfo(), ne faudrait-il pas préciser de créer un fichier à la racine du site contenant (avec les balises php).
    Puis de préciser de faire http://www.monsite.fr/machintrucchouette.php

    Cordialement

    Répondre à yerbouti
  10. Bonjours, merci pour cette article, cependant, j’aierais savoir si cela se passe de la même manière lorsqu’on change php-4.4.9 vers php-5.2 sur un serveur mamp (j’ai un serveur mamp installé sur osx pour tester un site avant publication en ligne) ? Pensez vous avoir ce genre d’info ?
    Merci

    Répondre à jerome
  11. @yerbouti, merci pour la précision

    @jerome, oui l’impact est le même. Le serveur « local » se comporte exactement de la même façon qu’un serveur distant pour cela

    Répondre à Marie-Aude
  12. Oups, j’ai bêtement mis du php dans mon commentaire. :)
    Il fallait lire :
    « ne faudrait-il pas préciser de créer un fichier à la racine du site contenant phpinfo() encadré par les balises d’ouverture et fermeture php. »

    Répondre à yerbouti

Commenter

*Informations requises Merci de donner les informations requises

  • Pas de liens raccourcis
  • L'auteur doit s'identifier avec son pseudo, son nom, son prénom ou s'il le veut le nom de son entreprise ou de son site, sauf si celui-ci correspond à des mots clés. Toutes les combinaisons sont permises dans ce cadre.
  • L'url peut être celle d'un site ou profil de réseau social, uniquement la page d'accueil
  • Pas d'adresse email jetable

*

*