J'ai essayé de rediriger plusieurs URL simples vers leurs nouveaux emplacements à l'aide de Nginx. Les URL proviennent de Blogger et ont le format suivant: http://domain.com/yyyy/mm/slug
.
Par exemple, j'ai ceci: http://example.com/2013/04/chartjs-javascript-library-for-easy.html
J'utilise cette réécriture Nginx pour le rediriger, mais pour une raison quelconque, cela ne fonctionne pas:
server {
location ~ /([2012-2013]+)/.*/chartjs-javascript-library-for-easy.html {
return 301 http://$server_name/resource/chart-js;
}
}
Je place ceci dans /etc/nginx/conf.d/example.conf
qui est chargé à l'intérieur de /etc/nginx/nginx.conf
Quelqu'un peut-il me dire pourquoi cela ne fonctionne pas? Cela fonctionnait quelque temps en arrière. Suis-je en train de déconner mon regex?
EDIT:
Pour une raison quelconque, l'emplacement /test
redirige ok, mais l'emplacement /test/html
ne le fait pas. Une idée pourquoi?
Notez que [2012-2013]
ne signifie pas ce que vous pensez qu'il en fait :) []
est une classe caractère, pas une classe numérique :)
Essayez location ~ ^/201[23]/.*/chartjs-javascript-library-for-easy.html