dedibox

dedibox

Mugshots aléatoires

From Anonymous

From Anonymous
Votre note: None

Lighttpd ModRewrite pour Drupal, Wordpress, Dotclear et Zenphoto

Durant la migration sur Lighttpd, outre l'installation de php5 en fastcgi, j'ai du revoir l'ensemble des règles de rewrite des mes sites. Voici quelques règle de réécriture Lighttpd pour quelques application web.

Drupal 6

$HTTP["host"] =~ "(^|\.)foo\.bar$" {
  url.rewrite-once = (
    "^/(files/.*)$" => "/$1",
    "^/system/test/(.*)$" => "/index.php?q=system/test/$1",
    "^/([^.?]*)\?(.*)$" => "/index.php?q=$1&$2",
    "^/([^.?]*)$" => "/index.php?q=$1",
    "^/search/(.*)$" => "/index.php?q=search/$1",
    "^/(.*).xml$" => "/index.php?q=$1.xml"
    "^/([^.?]*\.html)$" => "/index.php?q=$1",
    "^/([^.?]*\.htm)$" => "/index.php?q=$1"
  )
  url.access-deny = ( "~", ".inc", ".engine", ".install", ".module", ".sh", "sql", ".theme", ".tpl.php", ".xtmpl", "Entries", "Repository", "Root" )
}

La base vient de ce site mais j'ai apporté quelques modifications pour gérer le sitemap.xml entre autre.

Normalement ces règles doivent fonctionner sur Drupal 5, mais si vous avez quand même des problèmes, j'ai testé avec succès la solution ci-dessous.

Drupal 5

$HTTP["host"] =~ "(^|\.)foo\.bar$" {
  index-file.names = ( "index.php" )
  magnet.attract-physical-path-to = ( "/etc/lighttpd/drupal.lua" )
  url.access-deny = ( "~", ".inc", ".engine", ".install", ".module", ".sh", "sql", ".theme", ".tpl.php", ".xtmpl", "Entries", "Repository", "Root" )
}

j'ai trouvé cette manière de procéder ici.

Cette règle utilise un fichier 'drupal.lua' d'on voici le contenu :

attr = lighty.stat(lighty.env["physical.path"])
if (not attr) then
  lighty.env["uri.query"] = "q=" .. lighty.env["uri.path"]
  lighty.env["uri.path"] = "/index.php"
  lighty.env["physical.rel-path"] = lighty.env["uri.path"]
  lighty.env["physical.path"] = lighty.env["physical.doc-root"] .. lighty.env["physical.rel-path"]
end

Wordpress

$HTTP["host"] =~ "(^|\.)foo\.bar$" {
  url.rewrite = (
    "^/(wp-.+).*/?" => "$0",
    "^/(sitemap.xml)" => "$0",
    "^/(xmlrpc.php)" => "$0",
    "^/(.+)/?$" => "/index.php/$1"
  )
}

J'ai trouvé cette règle sur ce site.

Dotclear

$HTTP["host"] =~ "(^|\.)foo\.bar$" {
  url.rewrite = (
    "^/blog/[0-9]{4}/[0-9]{2}/?$" => "/blog/index.php/$1/$2",
    "^/blog/[0-9]{4}/[0-9]{2}/[0-9]{2}/?$" => "/blog/index.php/$1/$2/$3",
    "^/blog/[0-9]{4}/[0-9]{2}/[0-9]{2}/(.+)$" => "/blog/index.php/$1/$2/$3/$4",
    "^/blog/([A-Z][A-Za-z0-9_-]*)/?$" => "/blog/index.php/$1",
    "^/blog/([A-Z][A-Za-z0-9_-]*)/[0-9]{4}/?$" => "/blog/index.php/$1/$2",
    "^/blog/([A-Z][A-Za-z0-9_-]*)/[0-9]{4}/[0-9]{2}/?$" => "/blog/index.php/$1/$2/$3",
    "^/blog/([A-Z][A-Za-z0-9_-]*)/[0-9]{4}/[0-9]{2}/[0-9]{2}/?$" => "/blog/index.php/$1/$2/$3/$4",
    "^/blog/([a-z]{2}(-[a-z]{2})?)$" => "blog/index.php/lang=$1",
    "^/blog/ecrire/(.+)?$" => "blog/ecrire/$1",
    "^/blog/tag/(.+)?$" => "blog/index.php/tag/$1"
  )
}

Cette règle provient de ce site.

Zenphoto

$HTTP["host"] =~ "(^|\.)foo\.bar$" {
  var.zendir = "/"
  url.rewrite-once = (
    "^"+zendir+"admin/?$" => "$0",
    "^("+zendir+"(albums|cache|themes|zp-core).*)$" => "$1",
    "^("+zendir+"\?.*)" => "$1",
    "^("+zendir+"[a-z]+.php(\?.*)?)$" => "$1",
    "^"+zendir+"page/([0-9]+)/?$" => zendir+"index.php?page=$1",
    "^"+zendir+"page/([A-Z]a-z0-9\-_]+)/?$" => zendir+"index.php?p=$1",
    "^"+zendir+"(.*)/page/([0-9]+/)?$" => zendir+"index.php?album=$1&page=$2",
    "^"+zendir+"page/([A-Za-z0-9\-_]+)/([A-Za-z0-9\-_]+)/?$" => zendir+"index.php?p=$1&words=$2",
    "^"+zendir+"page/([A-Za-z0-9\-_]+)/([A-Za-z0-9\-_]+)/([0-9]+)/?$" => zendir+"index.php?p=$1&words=$2&page=$3",
    "^"+zendir+"page/([A-Za-z0-9\-_]+)/archive/([A-Za-z0-9\-_]+)/?$" => zendir+"index.php?p=$1&date=$2",
    "^"+zendir+"page/([A-Za-z0-9\-_]+)/archive/([A-Za-z0-9\-_]+)/([0-9]+)/?$" => zendir+"index.php?p=$1&date=$2&page=$3",
    "^"+zendir+"(.*)/image/(thumb|[0-9]{1,4})/([^/\\]+)$" => zendir+"zp-core/i.php?a=$1&i=$3&s=$2",
    "^"+zendir+"(.*)/image/([^/\\]+)$" => zendir+"zp-core/i.php?a=$1&i=$2",
    "^"+zendir+"(.*)/?$" => zendir+"index.php?album=$1",
  )
}

J'ai trouvé ces règles sur le site officiel de Zenphoto.

Évidement, jetez aussi un œil à la documentation de ModRewrite de Lighttpd pour plus d'informations.

Tags

Dedibox V2 Standard

Ça y est ! Ma nouvelle dedibox est livrée. Pas trop tôt, après un mois et demi d'attente (commandée le 17 juin, livrée le 5 aout). Et une journée de plus à attendre que le serveur d'install soit moins sollicité suite à une arrivé massive de dedibox. Enfin, je suis rôdé, je n'avais déjà pas eu trop de chance lors de ma première commande.

Si vous êtes aussi en train d'attendre votre livraison de dedibox, le plus simple est d'aller sur 'le chat d'entraide', lisez le topic ou sinon demandez à un admin.

Pour plus d'informations sur la configuration de ce serveur, allez voir la documentation officielle.

Lors de l'installation, j'ai choisi de rester sur une distribution debian (4.0r2 64bits).

J'ai profité de cette migration de serveur pour passer de Apache 2 à Lighttpd. Je prendrais le temps de développer ce sujet plus tard, mais pour le moment le bilan est positif, le site est plus rapide.

Et pour finir, j'ai aussi pu tester la procédure de résiliation d'une dedibox, et oui, je ne comptais pas garder ma vieille dedibox. Pour le moment j'ai envoyé le formulaire de résiliation en recommandé avec accusé de réception la semaine dernière. J'attends de leurs nouvelles.

A suivre.

Tags

Commande d'une dedibox V2

Je viens de me commander une nouvelle dedibox. J'attend maintenant l'installation de ce nouveau serveur.

Configuration de ma dedibox actuelle :

Serveur DEDIBOX 1 Standard - 29,99 € HT / mois, tout compris
Le serveur ultra éprouvé ancienne génération de la gamme Dedibox, disposant d'un processeur VIA C7 2Ghz, supportant le chiffrement matériel (padlock), de 1 Go de mémoire DDR2, d'un disque dur de 160Go SATA2 sans RAID et 100Mbit/sec de bande passante.

Et maintenant la nouvelle configuration :

Serveur DEDIBOX 2 Standard - 29,99 € / mois, tout compris. Le serveur d'entrée de gamme Dedibox destiné aux particuliers et PME/PMI, équipé d'un processeur Intel Celeron 220 (ou plus) de 2 Go de mémoire DDR2, d'un disque dur de 160Go SATA2 sans RAID et 100Mbit/sec de bande passante.

Vous pouvez aussi lire ce comparatif de serveurs dédiés. On y retrouve les principales offres actuelle : Dedibox V1, V2, XL, Gandi 8T, RPS, Kimsufi et Superplan 2008. Cette étude a achevé de me convaincre à migrer.

Tags

Je passe à XCache

Dernièrement, j'ai été amené à installer XCache sur ma dedibox à la place d'eAccelerator qui est actuellement incompatible avec PHP 5.2.5.

XCache comme eAccelerator sont des caches opcode php. Pour rappel php est langage scripté, il est normalement interprété à la volée par le parseur php. Les caches opcode permettent d'éviter cette étape de parsing. Pour plus de détails sur l'opcode rendez-vous sur cette page wikipedia.

Voyons comment installer et configurer XCache dans la suite de cet article.

Tags

PHP 5.2 et Drupal

Après avoir mis à jour PHP sur la version 5.2, mon Drupal a commencé à pèter les plombs. Accès non autorisés aux pages suite à des pertes de sessions. Après quelques recherches j'ai trouvé un patch qui corrige le problème. Ce bug vient du fait que les sessions php sont écrites après la destruction des objets.

Tags

J'ai reçu ma dedibox !

Commandée le 11/05/06, reçue le 10/06/06. Presque 1 mois ! Mais je suis quand même bien satisfait du résultat.

L'installation de la bestiole prend 10 minutes en commençant par choisir le système d'exploitation puis le partitionnement du disque dur ensuite le reste est automatisé.

[image:1603 size='thumbnail']
[image:1604 size='thumbnail']

J'ai du refaire l'installation car je me suis rendu compte un peu trop tard que j'avais oublié la partition de swap Smiling

Voici le détail du matériel contenu dans la boite :

  • Processeur
    • Constructeur : VIA
    • Modèle : C7
    • Fréquence : 2000 Mhz
  • Carte mère
    • Constructeur : VIA
    • Modèle : V1
  • Mémoire vive
    • Numéro de série : S207
    • Constructeur : AEONON
    • Type : DDR2
    • Taille : 1024 Mo
    • Fréquence : 4200
  • Disque dur
    • Constructeur : SEAGATE
    • Type : sata
    • Taille : 152625 Mo
  • Système de reboot
    • Numéro de série : 1005C4
    • Modèle : V1
Tags

Expectations

Comme je l'ai annoncé lors de mon précédent billet, j'attendais la Freebox V5, eh bien j'attend toujours Eye-wink Et en parlant d'attente, j'attend aussi ma dedibox ! Ils sont victime de leur succès chez Illiad ! Désolé Monkey, je suis trop currieux, je veux voir ce que donne cette boite malgrés ton avertissement.

Quelques liens pour la forme :

  • Le chat du moment, on ne sais pas si c'est du plaisir ou de la douleur mais il est trop drole.
  • Les vidéos de présentation de Drupal 4.7.0 ici et ici sur Google Video, au moins il n'y a pas besoin de Quicktime pour les voir.
  • Et pour la fin, une vidéo du montage d'un A380, un gigantesque légo.
Tags