Tag

serveur

Browsing

Toujours à la recherche de ce qui peut optimiser le chargement du site et soulager le serveur, je vous donne ma configuration du fichier htaccess en ce qui concerne les permalinks (ou permaliens en français correct) de WordPress.

Code de base WordPress 3.x

Voici le code htaccess standard de WordPress 3.x :

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Voici les nouveautés notables sur le site, introduites cet automne/hiver :

  • les 8 derniers commentaires sont affichés sur le site, contre 5 auparavant.
  • dans le menu bleu, ajout d'une rubrique "site" pour donner de la visibilité à certaines pages.
  • ré-introduction de liens de partage vers Facebook et Twitter à la fin des articles (merci Bozo).
  • CSS : toutes les listes (puces et numérotées) ont les mêmes marges.
  • ajout d'un lien pour se connecter juste avant le formulaire de commentaire, pour les membres.
  • légère modification au niveau du code des commentaires : sur certains vieux articles, il y avait des puces numérotées (ol) sans listings (li) qui cassaient la validation XHTML. Solution : tester voir si au moins un commentaire a été posté, si oui afficher la liste. Sinon, rien.
  • le serveur n'utilise plus memcache mais un serveur de reverse-proxy, Varnish : énorme gains de performance (gestion des cookies, cache des images, diminution de la charge CPU d'Apache...).
  • création d'un Validateur de code Flash en XHTML Strict (et validé W3C), utile pour intégrer une vidéo proprement dans vos pages.
  • création d'un script permettant de créer des alias mails @skyminds.net pour les rediriger vers une autre email. Utile pour s'inscrire à des concours ou pour donner une adresse temporaire sur des sites d'achats. Le script reste privé pour le moment, il faut avoir un serveur mail configuré avec MySQL.
  • ajout d'une sélection de livres à lire, suivant l'actualité du site. J'ai sélectionné Amazon parce qu'ils sont moins chers au final (frais de port gratuits).
  • quelques sites affiliés ont été ajoutés : Hotfile (hébergement de fichiers), PriceMinister (Achat/vente d'occasion) et WPtouch (thème mobile pour WordPress).

Voici ce qui a été modifié ou ajouté sur le site pendant les vacances d'été :

  1. ajout d'un espace biographie pour les articles des contributeurs du site - merci Stéphane pour la suggestion !
  2. correction de la présentation des pages auteurs via CSS.
  3. alignement du formulaire de la page d'inscription via CSS.
  4. correction des pages tablatures : une fonction était appelée deux fois sur les pages tablatures, produisant de l'XHTML invalide.
  5. la publicité a été remaniée : au bas des articles, c'était des bannières texte uniquement, maintenant elles pourront être en texte ou images. Les membres connectés ne voient pas de pub bien sûr, rien ne change à ce niveau-là.
  6. le plugin Cookies for Comments, certes efficace, a été désactivé : il met quasiment le serveur à genoux en tentant de créer des fichiers CSS (signe que le cookie est mis en place).

Le quartier libre d'été prend fin le 15 septembre donc si vous voulez publier un article, vous avez encore quelques jours :)

Alors que la course à l'anonymat sur internet bat son plein, que ce soit pour télécharger le dernier Lara Fabian ou simplement pour surfer en toute tranquillité, je m'en vais vous présenter un tutoriel qui vous permettra de créer un VPN.

Commençons les choses dans l'ordre !

Un vépéquoi ?

VPN, ça signifie Virtual Private Network, et si on le traduit en français ça donne Réseau Privé Virtuel. Pour faire court, il s'agit d'une passerelle entre le Client (nous) et, pour être vulgaire, Internet. C'est en tout cas l'utilisation que nous allons en faire ici.

Le grand avantage d'un tel tunnel c'est qu'il crypte toutes les données qu'il envoie et qu'il reçoit. Si vous passez par un VPN, vous êtes donc assez protégé. De plus, votre adresse IP sera celle du serveur sur lequel le VPN est installé.

En somme, il s'agit d'un gros proxy... en mieux.

Cela fait quelques mois que je n'ai pas fait le point sur les nouveautés du site ! Voici ce qui a été modifié pendant ces trois derniers mois :

  1. Mise à jour de WordPress après quelques mois de retard, histoire de basculer sur une version "éprouvée"... et dans quelques jours sortira la version 3.0 !
  2. Le bouton "reply" des commentaires est de nouveau opérationnel : en cliquant sur le bouton, le formulaire apparaît juste en dessous du message auquel vous voulez répondre. C'est le comportement habituel mais en déplaçant les javascripts dans le footer, cela m'avait échappé.
  3. Les couleurs des commentaires sont de nouveau alternées. J'avais ajouté comment_class() au bouton "reply" - visiblement WordPress n'aime pas ça !
  4. Toujours quelques problèmes avec le flux RSS et Feedburner : certains commentaires apparaissent aléatoirement dans le flux RSS des articles de temps à autre. Cela semble s'être réglé tout seul depuis quelques jours.
  5. Les inscriptions sur le site seront bientôt closes pour une durée indéterminée. Si vous avez un compte et que vous n'avez jamais posté, pensez-y. Les comptes fantômes n'ayant jamais servis seront supprimés à intervalles (plus ou moins) réguliers.
  6. Grosse optimisation du serveur au niveau du cache Apache. Je ne m'y prenais pas comme il faut mais je crois que là j'ai trouvé les bons réglages. J'en ferai un tuto bientôt (cela va devenir une phrase culte ici ça !).
  7. Vous pouvez désormais signaler les commentaires s'ils ne respectent pas la ligne éditoriale du site (spams, SMS etc). Comme je ne suis pas tout le temps sur le site, cela placera le commentaire en modération, hors de la vue du commun des mortels (après 2 signalements).

Cet article est le premier d'une série consacrée à la mise en place d'un serveur dédié. Le but est double : garder une trace de ce que je fais pour administrer mon serveur et donner des astuces à celles et ceux qui voudraient se lancer dans l'administration d'un serveur.

J'ai reçu mon serveur OVH à peu près 30 minutes après avoir passé commande : on reçoit un email avec le nom de la machine, son adresse IP et les identifiants root pour se connecter dessus via SSH.

Système d'exploitation

Au moment de la commande, on peut indiquer quel système d'exploitation on veut installer sur le serveur. La plupart des hébergeurs que j'ai contacté proposent CentOS (qui est basé sur Red Hat). J'ai donc installé CentOS dans une machine virtuelle sur mon PC pour voir ce que ça donne. J'ai assez vite abandonné l'idée, principalement parce que les noms des commandes changent : ce n'est plus apt-get mais yum etc. Réapprendre toutes les commandes d'une autre distribution n'ayant aucun attrait pour moi, j'ai éliminé CentOS de la liste des candidats.

Voici les distributions et systèmes d'exploitations proposés chez OVH à la date de cet article :

Debian 5.0 Stable, Ubuntu Server 8.04, Ubuntu Server 8.10, Ubuntu Server 9.04, Ubuntu Server 9.10, Open Suse 11, Red Hat Ent. Linux 5, Fedora 11, CentOS, Gentoo 2007, Gentoo 2008, Gentoo 10.1, Slackware 12.1, Slackware 13, Mandriva, ArchLinux, FreeBSD 7.1, FreeBSD 8.0, OpenSolaris (BETA), Openfiler NSA 2.3, Windows Server 2008 R2 Datacenter Edition, Windows Server 2008 R2 Entreprise Edition, Windows Server 2008 R2 Standard Edition, Windows Server 2008 R2 Web Edition, Windows Server 2008 R2 Core Datacenter Edition, Windows Server 2008 R2 Core Entreprise Edition, Windows Server 2008 R2 Core Standard Edition, Windows Server 2008 R2 Core Web Edition, Windows Server 2008 Datacenter Edition SP2, Windows Server 2008 Web Edition SP2, Windows 2003 Enterprise Edition, Windows 2003 Standard Edition, Windows Server 2003 Web Edition.

J'ai opté pour la simplicité et la robustesse, j'ai installé une Debian 64-bits.

Vous ne l'avez peut-être pas remarqué mais le site a été transféré sur un nouveau serveur : changement d'hébergeur donc. Le site quitte l'Angleterre pour venir s'installer en France, chez OVH. D'ailleurs, si vous pouvez lire cet article, cela veut dire que la propagation DNS est terminée et que je n'ai pas fait trop de bêtises.

dedicated-server

Le serveur

Le serveur est un serveur dédié à base de Celeron 1.2 Ghz avec 2 Go de RAM donc cela devrait changer d'un hébergement mutualisé avec des centaines de sites hébergés sur le même serveur. Là, je suis tout seul : il y a le site bien sûr mais aussi tous les services connexes tels que le serveur FTP, le serveur de mail, le serveur DNS etc. Tout cela tourne sur la même machine donc finalement, ce qui sur le papier a l'air très bien l'est un peu moins une fois que tout est configuré.

Vous avez très certainement remarqué que l'accès au site a été très instable ces derniers jours. Voici ce qui s'est passé, dans l'ordre des évènements.

Dimanche 21 février, je constate que le site rame vraiment. Cela fait déjà deux jours que je l'avais remarqué mais là, il faut quasiment 30 secondes pour que le site s'affiche. Je contacte mon hébergeur. 20 minutes plus tard, tout le site est down, affichant des erreurs 403 (forbidden). Même Cpanel est interdit, plus de FTP. Une heure plus tard, l'accès revient et le site regagne en vitesse. Satisfait, je fais quelques sauvegardes.

6 heures plus tard, une belle page "this account has been suspended" apparaît à la place du site.

backup-safeAujourd'hui, j'aimerai aborder la réplication des fichiers. Au sens général, il est prudent de toujours avoir une copie de sauvegarde : qui n'a jamais perdu un document précieux ou sur lequel il a passé des heures ?

Cela arrive à tout le monde un jour ou l'autre, dans des situations diverses et variées : un disque dur qui lâche, une clé USB qui s'égare, un service web qui ferme ses portes... nul n'est à l'abri d'une perte de données !

Le cas Rapidshare

C'est un secret de polichinelle aujourd'hui mais je vais quand même en parler : il paraît que l'on trouve des fichiers pas tout à fait légaux sur des hébergeurs de fichiers comme Rapidshare (dingue non ?).

Selon mes sources (qui travaillent pour RS), le célèbre hébergeur sent la législation tourner en Europe et souhaiterait faire héberger ses serveurs dans un pays à la législation plus laxiste. Le petit problème, c'est que des millions de fichiers sont hébergés chez eux et qu'ils ne peuvent pas les supprimer sans crier gare, sous peine de se voir boycotter par leurs usagers.

livre-php-professionnelVoici le premier concours organisé dans le cadre des 10 ans de SkyMinds.net : je vous propose de gagner le livre PHP Professionnel de Jesus Castagnetto, Harish Rawat et Sascha Schumann qui a été publié il y a quelques temps chez Eyrolles.

Je me suis pas mal aidé de ce livre lorsque j'ai débuté avec PHP et c'est vraiment utile d'avoir une référence sous la main pour les cas complexes (vous savez quand vous arrachez les cheveux pendant deux ou trois heures avant de comprendre votre erreur !).

PHP Professionnel

Dans ce manuel, vous allez découvrir ce qu'est PHP et comment il simplifie le développement de scripts côté serveur permettant d'ajouter de nouvelles fonctionnalités à vos pages web.

Après avoir appris à installer PHP sur votre serveur web, vous construirez votre première page PHP. Vous découvrirez ensuite la syntaxe de base du langage (variables, types de données, opérateurs, fonctions, tableaux...), avant de progresser rapidement vers des sujets de niveau plus avancé : programmation objet en PHP, manipulation des chaînes de caractères et expressions régulières, gestion de fichiers et stockage des données, PHP et les bases de données SQL, gestion des erreurs et
débogage, etc.

Voici les nouvelles fonctionnalités ajoutées au site ces deux derniers mois :

  1. amélioration du design de la page de login en retirant les ombres portées ajoutées par WordPress depuis la version 2.8. Il faudrait que j''en profite pour mettre à jour le plugin Pimp My Login, je ferais cela plus tard.
  2. ajout de nouvelles routines de redirection pour les tablatures. Comme j'ai modifié les chemin, il fallait que les anciens liens soient redirigés vers les nouvelles pages. J'ai galéré avec mes redirections .htaccess pendant quelques heures... avant de tout régler en PHP en moins de 10 minutes ! Comme quoi il vaut mieux rester simple parfois. Bonne leçon.
  3. le plugin Get Recent Comments a cessé de fonctionner pendant les grandes vacances... il désactivait les permaliens et le flux RSS du site et ne mettait plus à jour la sidebar lorsque de nouveaux commentaires étaient postés. Je l'ai donc retiré au profit de Recent Comments, qui malheureusement est plus gourmand en requêtes... La désactivation des permaliens, qui entraînait des erreurs 404 à gogo, m'a coûté la désindexation des 4/5è du site par Google. Gloups !
  4. optimisation des titres et balises H2 : au lieu d'appeler une image avant le titre, j'ai utilise les pseudo-classes (h2:before et h2:after). Cela effectue moins de requêtes puisque l'on utilise la feuille de style au lieu d'appeler les images directement. Plus propre, plus optimisé.
  5. j'ai désactivé pas mal de plugins dernièrement. Tout ce qui n'était pas utile en fait, soit une trentaine de plugins.

Rapport de faute d’orthographe

Le texte suivant sera envoyé à nos rédacteurs :