Nginx / WordPress – Permaliens et redirection d’url

Je suis en train de préparer la migration de fourre-tout vers WordPress. Pour ce faire, je change d’architecture et je quitte Apache.

Vous êtes de plus en plus nombreux, le temps de chargement s’en fait ressentir et le serveur souffre.

La prochaine version tournera sur NginX, FastCGI et PHP5. Le problème, c’est qu’il n’y a pas d’url rewriting au sens Apache avec le moteur NginX.

Out le .htaccess !

Du coup, bonjour le mal de crâne pour fixer les permaliens.

Pour coller à fourre-tout.com version dotclear, j’ai opté pour une structure de type :

/index.php/%year%/%monthnum%/%day%/%postname%/

Ca donne une url formée comme ceci :

index.php/2010/06/07/fail-le-chat-qui-pete

Pour que Nginx prenne en compte le permalink, il vous faut donc ajouter dans votre fichier de conf (ici sites-enabled/default) ces quelques lignes sous server :

#  Jolie url WordPress 
if (-f $request_filename) {    
   break; 
} 
if (-d $request_filename) {
   break; 
} 
rewrite ^(.+)$ /index.php?q=$1 last; 
#  permaliens de wordpress error_page 404 = //index.php?q=$uri;

puis vous devrez relancer nginx pour que ça prenne effet.

Maintenant, il reste l’insurmontable problème de la conservation du référencement.

Je voudrais opérer une redirection permanente 301 de ce type d’url

index.php/2010/06/07/1529-fail-le-chat-qui-pete

vers celui-ci avec Nginx:

index.php/2010/06/07/1529-fail-le-chat-qui-pete

Quelqu’un aurait la solution ? Merci de votre aide.

Giskette

Geekette coquette avec un chat et un gros défaut... mes parents : je m'appelle Gisèle

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *


*