Installer WordPress 4.1 « Dinah » sur les pages perso de FREE

  1. Déploiement de la version PHP 5.6.8 beta

    • Aujourd’hui, mercredi 22 juillet à 15 40 min, Lionel Bernardi vient d’annoncer que la version PHP 5.6.8 beta est déployée sur tous les serveurs des pages perso de FREE.
      Pour activer le php 5.6 (beta), il faut ajouter la directive suivante dans le .htaccess :

      <IfDefine Free>
      php56 1
      </IfDefine>
      

      Bien sûr, cette directive remplace la directive actuelle qui est

      <IfDefine Free>
      php 1
      </IfDefine>
      

      La version originale de WordPress fonctionne parfaitement avec cette directive, il n’est donc plus besoin d’installer une version adaptée à PHP 5.1.3.
      Ainsi prend fin la longue série d’adaptation de WordPress aux pages perso de FREE !

    • Pour télécharger le fichier « .htaccess » sécurisé et optimisé pour PHP 5.6.8 selon les conseils de Al du site les.pages.perso.chez.free, cliquer sur le bouton ci-dessous :

      .htaccess sécurisé pour PHP 5.6.8

      Voir le code du fichier .htaccess sécurisé et optimisé pour PHP 5.6.8

  2. Présentation générale

    Depuis WordPress 3.2, il est nécessaire que le serveur dispose d’au minimum PHP 5.2.4, or les pages perso de FREE disposent au mieux de PHP 5.1.3.
    Ainsi, les dernières versions officielles de WordPress ne peuvent pas fonctionner chez FREE telles quelles et nécessitent d’être adaptées à PHP 5.1.3.

    Lorsque cela est possible, les fonctions de PHP 5.2.4 nécessaires à WordPress 4.1 sont émulées sous PHP 5.1.3. Lorsque l’émulation n’est pas réalisable, le bug est signalé s’il est connu.
    En cas d’évolution de la version de PHP des pages perso de FREE vers PHP 5.6 (comme serait en train de la préparer Lionel Bernardi, l’administrateur des pages perso de FREE.), cette version restera fonctionnelle. En effet, elle est prévue pour fonctionner sous toutes les versions de PHP supérieures à 5.1.2.

    Cette version est mise en ligne sans aucun support ni aucune garantie. Elle est fonctionnelle sur mon propre site, mais peut avoir des bugs ou des incompatibilités avec vos extensions ou votre thème.

    Ainsi, il est préférable de la tester en ligne sur un sous-domaine de votre site FREE afin de vérifier sa compatibilité avec votre thème et vos extensions.

    Cette version s’inscrit dans la continuité du travail effectué sur les versions 4.0.x précédentes disponibles sur cette page : Installer WordPress 4.0 « Benny » sur les pages perso de FREE

  3. Procédure rapide de mise à jour de WordPress

    Avant de se lancer dans une mise à jour il est très important de faire auparavant une sauvegarde complète de la base de données (BDD) et du FTP comme indiqué dans le CODEX WordPress : Détails de mise à jour.

    Voir la procédure rapide de mise à jour

  4. Pas de mise à jour et d’installations automatiques

      En effet, les accès sortants sont bloqués par FREE, ce qui interdit :

    1. la lecture des flux RSS (widget « Les nouvelles de WordPress » en erreur sur le tableau de bord, désormais désactivé avec l’ajout d’un Must Use plugin);
    2. toutes les mises à jour automatiques;
    3. les installations automatiques de plugins et de thèmes via le tableau de bord de WordPress. Il faut donc les installer manuellement via FTP (avec Filezilla par exemple) en faisant comme indiqué :
      1. ici pour un plugin
      2. ou ici pour un thème.
    4. le fonctionnement des plugins nécessitant un accès sortant comme Akismet par exemple.

    Or, depuis la version WP 3.7 toutes les mises à jour sont effectuées chaque nuit automatiquement, ce que FREE interdit.

    Vous devez donc désactiver ces mises à jours ainsi que l’installation d’extensions et de thèmes depuis le tableau de bord WordPress en ajoutant au fichier « wp-config.php » les lignes ci-dessous :

    /** Désactive les mises à jour automatiques de WordPress */
    define( 'AUTOMATIC_UPDATER_DISABLED', true );
    
    /** Désactive l’Installation d'Extensions et de Thèmes depuis le tableau de bord */
    define('DISALLOW_FILE_MODS',true);

    Les deux effets de la constante DISALLOW_FILE_MODS

    Il n’est pas besoin d’ajouter ces lignes lors d’une première installation, elle sont déjà présentes dans le fichier « wp-config-sample.php » qui est utilisé comme modèle lors de la création du fichier « wp-config.php » .
    En revanche, pour une mise à jour de WordPress, vérifiez si ces lignes sont vraiment présentes dans le fichier « wp-config.php »

  5. Bug lié à la version PHP 5.1.3 des pages perso de FREE

    Le choix du « fuseau horaire » accessible depuis le tableau de bord Réglages -> Général doit obligatoirement être effectué via le choix UTC-1, UTC, UTC+1, UTC+2, etc. Le fuseau horaire ne doit pas être choisi via le nom des villes comme « Paris » « Berlin » sous peine d’avoir l’erreur « Fatal error: Call to undefined function timezone_open() in »…/wp-includes/functions.php on line 3611 » qui bloque le site.

    Lire une méthode de résolution de ce problème dans la conversation avec arno dans laquelle il a été signalé.

    La fonction timezone_open() n’est en effet disponible que sous PHP 5.2 et n’est pas émulée dans ce présent pack.

  6. Correction de l’erreur 500 lors de la modification des permaliens

    Le réglage des permaliens depuis le tableau de bord de WordPress crée une erreur 500 sur les pages perso de FREE. Cette erreur 500 est causée par les REWRITE RULES qu’écrit WordPress dans le fichier « .htaccess » et qui sont interdites sur les pages perso de FREE.
    Cette version intègre la correction de cette erreur 500 (correction n°XIV) proposée par eric dans son commentaire du 1er novembre 2014.
    Désormais, les permaliens peuvent être modifiés depuis le tableau de bord sans créer d’erreur 500.

    Attention, les permaliens chez FREE doivent toujours être modifié avec le réglage Structure personnalisée et précédé de /index.php/ comme par exemple /index.php/%postname%/ pour afficher le nom de l’article.
    De plus amples renseignements sont donnés dans le CODEX ici : Les marqueurs de structure

  7. Mémoire PHP consommée :

    D’après mes mesures, cette version consomme environ 1,8 Mo de plus que la version 3.7.1 spéciale FREE selon le thème par défaut utilisé.

    Ainsi, cette version WP 4.1 consomme nue (une seule extension activée : WP-Memory-Usage) lors d’une première installation avec le thème :

    1. Twenty Thirteen : 26,36 Mo (contre 25,78 Mo avec 4.0.1)
    2. Twenty Fourteen : 26,71 Mo (contre 26,15 Mo avec 4.0.1)
    3. Twenty Fifteen : 26,83 Mo

    Ce qui représente un peu plus de 83 % de la mémoire PHP disponible sur les pages perso de FREE (32 Mo non négociable). Ainsi, il ne vous sera pas possible d’activer un thème complexe ou de multiples extensions sur les pages perso de FREE.

    L’erreur « Fatal error: Allowed memory size of 33554432 bytes exhausted… » se produit lorsque des plugins et/ou un thème WordPress qui consomment trop de mémoire PHP sont activés simultanément. Un consommation excessive de mémoire PHP peut aussi se traduire par une erreur 500.

    Cette version intègre un plugin automatique que j’ai écrit permettant de désactiver les widgets WordPress non utilisés et donc permettant d’économiser de la mémoire PHP. Son usage est décrit dans la section n°7 qui suit.

  8. Changement des plugins inclus dans le pack WordPress 4.1 pour FREE :

    1. Suppression de Akismet qui ne fonctionne pas chez FREE
    2. Ajout de Author slug field, recommandé par Lumière de Lune (admin du forum français officiel de WordPress). Il est écrit en 40 lignes de code PHP et ne consomme presque rien : 0,006 Mo de mémoire PHP.
    3. Ajout de WP-Memory-Usage, qui permet de mesurer la mémoire PHP consommée depuis le tableau de bord de WordPress. Il est écrit en 80 lignes de code et consomme environ 0,038 Mo de mémoire PHP
    4. Ajout de Anti-spam qui est un plugin anti spam extrêmement efficace et léger (environ 0,032 Mo de mémoire PHP consommée) qui fonctionne sans aucun réglage et ne stocke rien en base de données.

      Si jamais ce plugin laisse passer des pings ou des rétroliens que certains robots utilisent pour spammer, il suffit de clôturer les PINGS et RÉTROLIENS depuis le tableau de bord : tableau de bord->Réglages->Discussion, décocher la case « Autoriser les liens de notifications depuis les autres sites (notifications par pings et rétroliens)  » et ENREGISTRER tout en bas de page.
      Cela les fermera pour les nouveaux articles.

      Pour les anciens articles, il suffit de les clôturer avec phpMyAdmin en effectuant cette requête depuis l’onglet SQL :

      UPDATE `wp_posts` SET ping_status='closed';
    5. Ajout de Daily Cleaner & Optimiser Lite qui est un dérivé de Clean Up que j’ai écrit pour mon usage personnel. Il permet de nettoyer la base de données manuellement comme Clean Up. Je lui ai ajouté ce nettoyage de façon automatique quotidiennement (après minuit) ainsi que l’optimisation automatique de toutes les tables de données après nettoyage. Il est écrit en 63 lignes de code (environ 0,032 Mo de mémoire PHP consommée) comme indiqué dans l’article où je le présente Daily Cleaner Optimizer Lite
    6. Ajout de Use jQuery jsDelivr qui est un plugin qui permet de charger les scripts jquery, jquery migrate et masonry utilisés par WordPress depuis le CDN open source jsDelivr qui combine la puissance du CDN de CloudFlare et du CDN de MAXCDN (qui est celui de la fondation jQuery dont WordPress est membre fondateur). Il optimise et accélère le chargement de WordPress. Je l’ai écrit pour mon usage personnel en 14 lignes de code et il consomme environ 0,008 Mo de mémoire PHP. Plus d’information dans l’article où je le présente ici Use jQuery jsDelivr
    7. Ajout d’un plugin automatique (Must-Use plugin ou mu-plugin) dans le dossier /wp-content/mu-plugins qui est un plugin qui permet de désactiver les widgets wordpress et par la même de réduire la consommation de mémoire PHP.
      Par défaut, seul le widget en erreur sur les pages perso « Nouvelles de WordPress » est désactivé.
      Il est possible d’économiser au minimum 0,1 Mo en désactivant tous les widgets non utilisés. Voir le code et l’usage de ce mu-plugin

    Vous pouvez activer ces plugins à votre gré. Ils consomment très peu de mémoire PHP et sont très utiles, voire indispensables.

  9. Plugins, scripts et thèmes présentant des failles à éviter absolument :

    Lire le paragraphe

  10. Téléchargement :

    Cliquer sur le bouton ci-dessous pour télécharger l’archive compatible FREE :

    wordpress-4.1.5-fr_FREE.zip

    <-- WordPress 4.1.5 corrigé d'une deuxième faille XSS critique trouvé dans toutes les versions de WordPress inférieures à 4.2.2 (publié le 7 mai 2015). Voir : WordPress 4.2.2 Security Release. Attention : vous devez supprimer manuellement (via FTP) les fichiers « example.html » listés ici pour corriger la faille de sécurité.


    wordpress-4.1.4-fr_FREE.zip
    <-- WordPress 4.1.4 corrigé d'une faille XSS critique trouvé dans toutes les versions de WordPress inférieures à 4.2.1 (publié le 27 avril 2015). Voir : WordPress 4.2.1 Security Release.

    wordpress-4.1.3-fr_FREE.zip
    <-- WordPress 4.1.3 qui corrige un bug mineur de 4.1.2 (publié le 24 avril 2015). Voir : WordPress 4.1.3 Released

    wordpress-4.1.2-fr_FREE.zip
    <-- WordPress 4.1.2 corrigé d'une faille XSS critique trouvé dans toutes les versions de WordPress inférieures à 4.1.2 (publié le 21 avril 2015). Voir : WordPress 4.1.2 Security Release.

    wordpress-4.1.1-fr_FREE.zip <---------- WordPress 4.1.1

    wordpress-4.1-fr_FREE.zip <---------- WordPress 4.1

  11. Configurer le serveur Apache de votre page perso

    Afin d’activer PHP 5.1.3 sur les pages perso au lieu de PHP 4.4.3, vous devez installer à la racine du site un fichier « .htaccess » contenant une seule ligne

    php 1

    Ou mieux, téléchargez le fichier « .htaccess » sécurisé et optimisé selon les conseils de Al du site les.pages.perso.chez.free en cliquant sur le bouton ci-dessous :
    .htaccess sécurisé pour FREE.FR <---------- fichier « .htaccess »

    Voir le code du fichier .htaccess sécurisé et optimisé pour les pages perso de FREE

  12. Sécuriser la page d’administration de WordPress

    A la suite de nombreuses attaques vers les pages d’administration des sites WordPress et Joomlaa, Lionel Bernardi (administrateur des pages perso de FREE) a installé un script qui fixe des règles pour limiter ces requêtes et interdire l’accès aux adresses IP qui tentent de se connecter trop souvent à ces pages d’administration. Toutefois, ce script, parfois trop sensible, a interdit à certains blogueurs l’accès à leur propre site depuis leur box internet. Si tel est votre cas, vous devez contacter le forum USENET des pages perso pour que Lionel Bernardi, l’admin des pages perso, déblackliste votre adresse IP. Pour éviter ce problème, il est très fortement conseillé de bunkériser l’accès à l’administration de WordPress. Comment bunkériser l’admin de WordPresss ?

  13. Que faire en cas de problème ?

    1. En cas de problème lors de l’installation de WordPress sur les pages perso de FREE, vous pouvez demander de l’aide sur le forum USENET officiel de support des pages perso de FREE. Des bénévoles vous expliqueront tout en détail.

      Ce forum n’est pas accessible depuis un navigateur internet. C’est en réalité un « groupe de discussion » (comme ceux usités par les universitaires). Pour y accéder, vous devez installer un logiciel de News comme par exemple :

    2. Pour un problème lié à WordPress lui-même, vous pouvez vous adresser aux forums supports de WordPress :

  14. Détails des modifications des fichiers PHP du noyau de WordPress :

    Les six premières modifications sont identiques à celles apportées par Gaëtan Janssens pour installer la version 3.2.1 et affinées conjointement avec Rodolphe Marsolier pour la version 3.5.2, auxquelles s’ajoutent les neuf modifications numérotées VII à XV. Voir les modifications du noyau de WordPress

  15. Test des capacités de téléchargement des images :

      Suite à de nombreux commentaires disant que les dernières versions de WordPress posaient des problèmes de téléchargement des images sur les pages perso de FREE, j'ai procédé aux essais ci-dessous avec des photos jpg non optimisées et j'ai constaté qu'avec le thème twenty fifteen activé  :

    • Il apparait le message "Une erreur est survenue lors de l’envoi. Veuillez réessayer plus tard." pour des photos jpg de :
      • 1280x960 pixels pesant 775 Ko
      • 960x720 pixels pesant 497 Ko
      • 920x690 pixels pesant 466 Ko
      • 900x675 pixels pesant 451 Ko
    • Sont correctement téléchargées des photos jpg de :
      • 640x480 pixels pesant 282 Ko
      • 800x600 pixels pesant 315 Ko
      • 880x660 pixels pesant 434 Ko
      • 890x668 pixels pesant 444 Ko avec twenty fifteen
      • 1020x765 pixels pesant 550 Ko avec twenty thirteen ou twenty fourteen sur un site nu (aucun plugin activé)

      Sur mon site avec Twenty thirteen la plus grosse image téléchargée est celle-ci :

      [caption id="attachment_12215" align="alignleft" width="970"]Kyotogarden-970x728 508 Ko Kyotogarden-970x728 508 Ko[/caption]

      Conclusion : Il semble que sur un site WordPress 4.1 nu (aucun plugin activé) pesant 27,49 Mo chez FREE, la limite maximum du poids des images varie selon la lourdeur du thème installé et peut aller jusqu'à un maximum de 550 Ko.