Migration des exécuteurs PHP des Pages Perso de Free vers PHP 5.6 et PHP 8

URL à partager :
http://lppcf.free.fr/php56

Dernière mise à jour de la page : 23/03/2024 18:08 GFT.
Une mise à niveau de la version des exécuteurs PHP est prévue prochainement sur les serveurs de Free.
Vous trouverez sur cette page les informations correspondantes.

Les versions actuelles de PHP utilisées par Free sont dépassées. Une mise à niveau est en préparation par les équipes techniques en charge de l'infrastructure. La version retenue est PHP 5.6.x et sera testée par des volontaires avant d'entrer en production sur tous les serveurs.

Comment cela va-t-il se passer ?

Depuis quelques temps, Lionel a mentionné, sur les forums Usenet de Free dédiés aux Pages Perso, la préparation et le test en interne d'une version de PHP 5.6 et de PHP 8. Ce sont ces versions qui seront déployées prochainement sur les serveurs.

La mise en production de la nouvelle version de PHP 8 sera progressive, et les anciennes versions (4.4.3, 5.1.3 et 5.6.34) seront maintenues sur les serveurs une fois le basculement vers la nouvelle version effectué. Les utilisateurs devront alors vérifier que leurs scripts sont compatibles et éventuellement migrer vers de nouvelles versions de CMS. Parfois, il faudra réécrire ces scripts pour les adapter au nouvel environnement. La configuration actuellement retenue (PHP 7.3.3 via php73 1 dans un fichier .htaccess uniquement sur le serveur d'alpha-test ne fonctionne plus en raison d'un bug dans la gestion des sessions), PHP 5.6.34 via php56 1 dans un fichier .htaccess, PHP 5.1.3 via php 1 dans un fichier .htaccess, PHP 4.4.3 par défaut.

Les répertoires sessions et tmp devraient être créés automatiquement lors de l'activation des nouveaux comptes une fois la nouvelle version déployée, mais pour le moment, il faut les créer soi-même.

Aussi, une période de test précédera le basculement de l'ensemble de l'infrastructure. Les inscriptions à la beta publique sont libres. Il faut simplement suivre les informations permettant d'activer la nouvelle version de PHP.

Historique du déploiement de la nouvelle version

Voici l'historique du déploiement de la nouvelle version de PHP :

  • 15/06/2015 : Ouverture des inscriptions aux alpha-tests sur le forum Usenet.
  • 15/06/2015 : Ouverture des inscriptions aux alpha-tests sur le forum Usenet.
  • 17/06/2015 : Ouverture du fil de rapport de bugs sur le forum Usenet.
  • 22/07/2015 : Ouverture de la période de beta-test publique pour PHP 5.6.8. Les serveurs perso98-g5.free.fr et perso101-g5.free.fr ne disposent pas de la version beta. Si votre compte est hébergé sur l'un de ces serveurs, vous devrez patienter. Les comptes hébergés sur le serveur perso101-g5.free.fr seront migrés petit à petit sur d'autres serveurs.
  • 29/06/2016 : Ouverture des alpha-tests de la version PHP 5.6.23 (sur le serveur perso117-g5.free.fr).
  • 04/09/2017 : Début de la réflexion sur le déploiement de PHP 7.
  • 26/03/2018 : Ouverture des alpha-tests de la version PHP 5.6.34 (sur le serveur perso117-g5.free.fr).
  • 27/03/2018 : Début de la réflexion sur le déploiement de PHP 7.2.x.
  • 02/10/2018 : Ouverture de la période de beta-test public pour PHP 5.6.34. Les serveurs perso98-g5.free.fr et perso101-g5.free.fr ne disposent pas de la version beta. Si votre compte est hébergé sur l'un de ces serveurs, vous devrez patienter ou demander la migration de votre compte sur un autre serveur depuis le forum usenet.
  • 04/04/2019 : Ouverture de la période d'alpha-test public pour PHP 7.3.3 (sur le serveur perso117-g5.free.fr).
  • 23/03/2024 : L'alpha-test public pour PHP 7.3.3 (sur le serveur perso117-g5.free.fr) est suspendue en raison d'un bug dans la gestion des sessions. Le code déployé sur les serveurs des pages perso de Free étant très fortement modifié, la résolution de ce bug demanderait trop de temps. Les efforts porteront donc sur le déploiement d'une version PHP 8 très prochainement.

Informations techniques

Voici quelques détails concernant les aspects techniques de la nouvelle version PHP 5.6 :

  • PHP 5.6.34 ;
  • Un phpinfo() est disponible ici pour PHP 5.6.34 (version beta) ;
  • open_basedir est activé ;
  • Jeux de caractères par défaut UTF-8 ;
  • memory_limit : 64 Mo ;
  • post_max_size : 2 Mo ;
  • max_execution_time : 30 s. ;
  • max_input_time : 60 s. ;
  • max_file_uploads : 20 ;
  • sendmail n'est pas disponible ;
  • json est disponible ;
  • mysqli est disponible (mysql est déprécié) ;
  • PDO est disponible pour PgSQL et MySQL ;
  • PDO n'est pas disponible pour SQLite ;
  • SQLite est disponible ;
  • SQLite3 n'est pas disponible ;
  • PEAR n'est pas disponible ;
  • zlib.output_compression n'est pas actif ;
  • glob n'est pour le moment pas désactivé (c'était le cas pour PHP 5.1.3 et PHP 4.4.3) ;
  • sys_get_temp_dir à pour valeur la racine du compte ou le répertoire tmp, si il existe à la racine du compte ;
  • stream_wrapper_unregister ne supporte que les protocoles http et https ;
  • Un certain nombre d'URL « importantes » sont acessibles depuis les scripts PHP (mises à jour WordPress, Dotclear, Drupal, Aksimet, Google reCaptcha, etc.). Une fois la nouvelle version en production, il sera possible de demander la mise en liste blanche de certaines URL pour accès depuis les scripts PHP.

Voici quelques détails concernant les aspects techniques de la nouvelle version PHP 7.3.3 :

  • Un phpinfo() est disponible ici pour PHP 7.3.3 (serveur d'alpha-test) ;
  • Fonctions désactivées/bloquées ou ne « faisant » rien :

    chown, chmod (n'est pas bloquée mais ne « fait » rien), curl, get_current_user, php_uname, putenv, set_time_limit, getmyuid, getmypid, dl, ini_alter, ini_restore, ini_set, exec, passthru, system, popen, pclose, leak, mysql_list_dbs, mb_regex_encoding, listen, chgrp, disk_total_space, disk_free_space, rmdir, realpath, tmpfile, link, shell_exec, proc_open, chroot, openlog, closelog, syslog, flock, socket_create_listen, socket_accept, socket_listen, sleep, usleep, umask, set_include_path, restore_include_path, symlink, setlocale, imagerotate

    Les modules FTP et IMAP ne sont pas installés.

    Voici quelques détails concernant les aspects techniques de la nouvelle version PHP 8 :

    Travaux internes en cours, aucune date connue pour l'ouverture des inscriptions à la période d'alpha-test.

    C'est la dernière version stable de PHP 8 qui sera utilisée.

    Être beta-crash-testeur…

    Une beta publique d'une nouvelle version de PHP permet de tester une nouvelle version logicielle afin de déceler ses défauts, ses bugs ainsi que les éléments qui peuvent faire l'objet d'une amélioration avant le déploiement officiel. Ces tests sont effectués par des volontaires.

    La période de test de la version beta est ouverte à tous les utilisateurs des Pages Perso. Son lancement sera annoncé sur le forum Usenet de Free dédié aux Pages Perso par l'administrateur du service, Lionel Bernardi.

    Les risques et les avantages d'une version beta

    Tester un nouveau logiciel est excitant, cependant, cette activité doit être laissée à la charge d'utilisateurs expérimentés qui connaissent les risques inhérents à cette activité. En effet, ces versions logicielles sont – par définition – non exemptes de bugs ou de failles de sécurité et leur utilisation peut conduire à des pertes de données, à la divulgation de données confidentielles, à des indisponibilités partielles ou totales de vos applications ou à la compromission de votre application ou de votre compte et ce, pour des durées inconnues.

    De ce fait, la version beta de PHP proposée durant la période de migration ne doit en aucun cas être utilisée sur des sites en production et sur des sites dont les données sont importantes pour le titulaire.

    Où rapporter les problèmes rencontrés ?

    Tous les bugs et les erreurs rencontrés lors de l'utilisation de scripts pendant de la période de migration doivent être rapportés sur le forum Usenet des Pages Perso,dans un fil ayant pour sujet [PHP-5.6/Beta testing] Objet de votre rapport de bug. Pensez à être le plus précis possible afin de faciliter le travail de l'équipe en charge du développement et à vérifier que votre code respecte les spécifications de la version 5.6.8 de PHP avant de poster votre message. Vous êtes invités à inclure dans vos messages des exemples de code posant problème (en les expurgeant des données confidentielles ou personnelles).

    Participer aux tests

    Si vous souhaitez participer à cette beta publique, il vous suffit de suivre les indiquations données sur le forum Usenet dans le message de l'administrateur ayant pour titre [PHP-5.6/Beta testing] Information. Il est possible de passer votre site sur la nouvelle version beta de PHP en ajoutant la directive ci-dessous dans un fichier .htaccess à la racine de votre compte :

    <IfDefine Free>
    php56 1
    </IfDefine>

    En vous inscrivant, vous acceptez et reconnaissez que, lors de la phase de test, des problèmes peuvent survenir, entraînant de possibles divulgations d'informations confidentielles, des pertes de données éventuelles, des indisponibilités de vos sites, ou des erreurs diverses et variées. Vous ne pourrez en aucun cas tenir pour responsable la société Free ou le titulaire de ce site.


↥ top