Migration: blog.mes-stats.fr vers www.d-sites.com

C’est ainsi que www.d-sites.com deviens en fait un simple blog WordPress. Agrêmenté au fur et à mesure par les librairies que je présenterais, il me fera un portail sur le web.

Tous les liens avec le nom de domaine “blog.mes-stats.fr” sont modifiés grâce à cette technique de redirection vers ce nouveau nom de domaine (vieux d’ailleurs) “www.d-sites.com”.

facebooktwittergoogle_plusredditpinterestlinkedinmail

HTACCESS: Changer proprement de nom de domaine

Changer de nom de domaine peut être une opération très fastidieuse lorsque le site est mal construit ou surtout pas tourné vers la réutilisabilité. Néanmoins, quelques techniques vous permette simplement de rediriger toutes les requêtes de votre ancien nom de domaine sur le nouveau, telles qu’elles. Il s’agît d’une méthode utilisant un fichier HTACCESS ou directement dans les configuration de votre VirtualHost, ou même dans la configuration générale si vous y avez accès. Continue reading HTACCESS: Changer proprement de nom de domaine

facebooktwittergoogle_plusredditpinterestlinkedinmail

Performances PHP: Serialize ou Implode – Unserialize ou Explode

Pour le stockage de tableaux “simple”, c’est-à-dire sur un niveau, sans clés particuliéres, la question est souvent celle de quelle méthode vais-je utiliser pour transformer ce tableau en chaine de caractère et inversement. Deux solutions viennent tout de suite à l’esprit, serialize/unserialize et implode/explode. Voici un petit benchmark que j’ai réaliser, avec un million d’itération de chaque commande, sur un tableau très simple de dix éléments, 5 chaines de caractères (entre 6 et 1 caractère) et 5 entiers inférieurs à 10 :
Continue reading Performances PHP: Serialize ou Implode – Unserialize ou Explode

facebooktwittergoogle_plusredditpinterestlinkedinmail

PHP: mb_substr à la place de substr pour l’UTF-8

Si vous utilisez un hébergement mutualisé pour quelconque site ou service, lors du développement, tout doit être encodé de la même manière. Comme je le conseil dans l’article concernant les problèmes d’encodage, utiliser UTF-8 avec PHP n’est pas toujours facile, surtout quand c’est PHP lui-même qui vous transforme vos chaines de caractère UTF-8 en ISO-8859-1 (si c’est l’encodage de caractère utilisé sur le serveur…).

C’est en effet le cas de la fonction substr qui converti les chaines de caractères. Comprendre d’où vient l’erreur d’encodage sans penser que ça pourrait être PHP lui-même, c’est dur… Donc, pour spécifier l’encodage à utiliser pour substr, il faut utiliser la fonction mb_substr et lui ajouter un argument comme ceci:

Que cet article aide de nombreuses personnes à ne pas chercher pendant des heures un problème qui n’est pas réellement de le ressort…

facebooktwittergoogle_plusredditpinterestlinkedinmail

Ubuntu: Fusionner des fichiers PDF

Pour fusionner deux ou plusieurs fichiers PDF en un seul sous Ubuntu c’est très simple, il vous suffit d’installer le packet pdfjam qui contient la commande”pdfjoin” qui va nous permettre de fussioner nos PDF. Admétons que nous avons 3 fichiers PDF nommés respectivements “un.pdf”, “deux.pdf” et “trois.pdf”. Nous voulons les fusionner en une seul pdf nommé “unique.pdf” :

Note : l’installation de “pdfjam” peut neccessiter le téléchargement de plus de 100 méga-octets de packets.

facebooktwittergoogle_plusredditpinterestlinkedinmail

Tortoise SVN pour Ubuntu : Nautilus SVN

Sous Windows, la gestion d’un dépôt SVN est très simple grace à l’interface graphique Tortoise SVN qui permet de faire comme si le dépôt était un dossier. On modifie un fichier dans celui-ci et ce fichier change d’étiquette. Son étiquette est maintenant “plus à jour”, dans ce genre là. Avec Ubuntu, ça n’a jamais été aussi simple (avant, un “svn checkout” puis un “svn commit”, etc…) qu’avec la nouvelle version de Nautilus SVNbêta (la 0.12), qui est une extension à Nautilus, l’explorateur de fichier par défaut. Continue reading Tortoise SVN pour Ubuntu : Nautilus SVN

facebooktwittergoogle_plusredditpinterestlinkedinmail

Performances: Les boucles

Les paramètres des boucles en PHP – nous allons ici parler de for – ne sont pas mis en cache. Il faut donc faire attention lors de l’initialisation des boucles à ne pas mettre dans les conditions de fonctions qui n’ont pas à être éxécutées à chaque tour. Exemple:

Code n°1

Continue reading Performances: Les boucles

facebooktwittergoogle_plusredditpinterestlinkedinmail

Apache: Interdire le dossier “.svn”

Lors du développement ou de la pré-prod (en production, c’est n’est pas très malin), il se peut que vous utilisiez la commande “svn co” pour extraire les fichiers de votre dépôt SVN et les mettre sur le serveur web, puis utiliser “svn update” pour mettre à jour très simplement. Lors de cette manipulation, dans tous les dossiers et sous-dossiers extraits du dépôt, des dossiers “.svn” sont créés, contenant des informations à propos du dépôt et des fichiers présents dans ces dossiers. Ces informations sont confidentielles et ne doivent pas être volées. Malgré la protection d’accès à la version de développement – s’il y a – il se peut qu’un étranger y ai accès. Nous allons donc voir comment interdire l’accès à ces dossiers par deux méthodes

Interdire les dossiers via <Directory>

Nous allons donc interdire toute personne à entrer dans les dossiers “.svn” et ses sous-dossiers. Dans un fichier HTACCESS, dans un VirtualHost ou bien dans la configuration globale d’Apache, vous pouvez utiliser la directive <Directory> pour ajouter des paramètres à certains dossiers : Continue reading Apache: Interdire le dossier “.svn”

facebooktwittergoogle_plusredditpinterestlinkedinmail

Forcer l’utilisation de PHP5 avec Apache via HTACCESS

Parfois, – il est le cas des mutualisés d’OVH – certains hébergements proposent PHP en versions 4 et 5. Seulement, la version par défaut des fichiers “.php” est la numéro 4, ce qui peux poser de gros problèmes (avec la POO notament) de compatibilité si votre serveur de développement / pré-prod utilise la version 5…

Pour celà, on peux forcer l’utilisation de la version 5 en modifiant une variable globale d’Apache en une ligne seulement :

Cette ligne peut être insérée dans un fichier “.htaccess” (à la racine de votre espace d’hébergement s’il s’agit d’un dédié ou même dans un dossier si vous voulez utiliser PHP5 dans ce dossier spécialement), dans un VirtualHost si vous administrez votre serveur Web ou dans la configuration globale d’apache (apache2.conf par exemple ).

facebooktwittergoogle_plusredditpinterestlinkedinmail