Je viens de passer de l'EE 1 à l'EE 2 et j'ai du mal à faire face à certains changements. Par exemple, le fait qu'EE ne produise plus de barre oblique de fin de ligne sur ses urls met à mal un grand nombre de mes liens pour lesquels j'avais recours à des constructions telles que l'url générée par EE + un segment supplémentaire. Trouver et modifier tous les endroits où j'ai fait cela serait un petit cauchemar vu la taille et la configuration de mon site. Existe-t-il un moyen de modifier EE pour retrouver l'ancien comportement ?
Réponses
Trop de publicités?Pour certains, l'ajout de la barre oblique de fin mentionnée pourrait entraîner des conflits avec certains formulaires. L'ajout de ce qui suit pour vérifier si la requête est un GET pourrait être plus sûr.
# Add a trailing slash to paths without an extension
RewriteCond %{THE_REQUEST} ^GET
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule ^(.*)$ $1/ [L,R=301]
Il existe une solution .htaccess à ce problème, que j'ai utilisée sur mes anciens sites EE à cause de ce problème précis.
Ajouter la barre oblique de fin
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule ^(.*)$ $1/ [L,R=301]
Source : http://devot-ee.com/articles/item/simple-htaccess-for-expressionengine-sites
Cependant, comme il est présent par défaut dans EE2, vous pouvez faire l'OPPOSITION et supprimer la barre oblique de fin via le fichier .htaccess afin que vous n'ayez pas à ajouter/supprimer/quelque chose manuellement. Si vous optez pour cette solution, voici le code :
Supprimer la barre oblique de fin de ligne
RewriteCond %{HTTP_HOST} !^\.yoursite\.com$ [NC]
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
Source : http://ee-spotlight.com/tips/a_standard_htaccess_file_with_expressionengine