Posts Tagged ‘php’

Organisation technique du développement web

Friday, November 27th, 2009

À l’occasion d’un petit déjeuner organisé par Evolix, en partenariat avec Libertis, la région PACA, le Prides SCS et le FEDER, dans les locaux de Marseille Innovation au Pôle Média Belle de Mai (oui, c’est un peu long mais je me dois de citer tous les partenaires), j’ai pu animer une présentation sur l’organisation technique du développement web. Vous pouvez télécharger les slides de la présentation (format PDF, 2.2 Mo).

Cette présentation a permis de faire un point sur les différentes organisations en place dans des sociétés clientes ou proches d’Evolix. Je remercie d’ailleurs les responsables techniques qui ont répondu à mes questions ces derniers jours. Globalement, il se dégage une forte tendance à l’utilisation d’Eclipse comme IDE, que ça soit pour les projets en Java ou PHP. Au niveau SCM, on retrouve CVS et majoritairement SVN, avec une gestion des branches plus ou moins avancée. En terme de bugracker, c’est assez divers : Trac, Mantis ou Bugzilla. Pour le développement, c’est souvent http://localhost qui est utilisé. Une mise en préproduction est ensuite effectuée, puis une bascule en production, à l’aide de scripts personnalisés s’appuyant sur le SCM. En terme de méthodes, plusieurs sociétés utilisent des méthodes agiles (tests unitaires, sprints, etc.) de façon plus ou moins avancées. En général, l’organisation en place est informelle et reprend les bonnes idées adaptées à son projet. Les benchmarks et tests de performance sont plutôt effectués dans une seconde phase (en préproduction voire en production), sauf dans certains cas où ils sont intégrés aux tests unitaires (ce qui est une très bonne pratique). Enfin, en terme de framework, on distingue deux tendances : l’exploitation d’un framework existant et reconnu, ou l’utilisation d’un framework développé en interne.

Bien évidemment, ce petit inventaire n’a pas la prétention d’être exhaustif ou de définir une organisation idéale. C’est plutôt un passage en revue de bonnes pratiques, permettant de les découvrir … ou de s’assurer qu’on ne passe pas à côté de certains outils.

Mise-à-jour WordPress et sécurisation basique

Thursday, August 13th, 2009

Une faille de sécurité sur le logiciel WordPress permet de réinitialiser le mot de passe d’un utilisateur connu (admin par exemple…). Cela consiste à faire une requête du type http://SERVERNAME/wp-login.php?action=rp&key[]= (soumettre une key[] vide permet apparemment de rendre inutile la vérification par mail). Il est donc conseillé de mettre à jour WordPress en version 2.8.4 (voici le patch pour passer de la version 2.8.3 à 2.8.4).

J’en profite pour rappeler quelques notions basiques pour sécuriser une installation d’un logiciel PHP, surtout quand il est très répandu : si possible, limiter les accès aux parties backoffice via Apache (restriction par adresses IP et/ou authentification HTTP), utiliser des identifiants originaux (pas forcément admin…), des mots de passes complexes, éviter les modules/plugins non fiables, suivre les notifications de mises-à-jour et les appliquer rapidement (cela implique de limiter les modifications intrusives empêchant des futures mises-à-jour, ou du moins les préparer sous forme de patch pour les ré-appliquer très rapidement), etc. Pour le premier point, voici un exemple de sécurisation de WordPress via Apache :

<LocationMatch "^/wordpress/wp-(admin|login)">
Deny from all
Allow from YOUR_IP
</LocationMatch>

Apache/PHP Segmentation fault avec OpenX

Tuesday, September 2nd, 2008

Pour mémoire, OpenX (un logiciel libre gérant les régies publicitaires sur les sites web) fait crasher Apache/PHP si l’option zend.ze1_compatibility_mode est activée (confirmation du bug ici ).