Joomla.it Forum
Componenti per Joomla! => SEO => : danielecr 19 May 2017, 16:19:16
-
Ciao a tutti,
qualcuno sa che regole scrivere nell'htaccess in modo che:
1- se viene richiesto l'url linkalsito/en oppure linkalsito/it automaticamente aggiunga uno slash finale, in modo che diventi linkalsito/en/ oppure linkalsito/it/
2- tolga lo slash finale in tutti gli altri casi (nel caso in cui venga richiesto dal visitatore un url con slash finale) <-- ora, sia che venga richiesto con slash finale o meno il contenuto della pagina viene visualizzato (possibile problema di contenuto duplicato).
Attualmente ho questa regola per aggiungere lo slash:
RewriteCond %{REQUEST_URI} ^/(en|it)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
Come implemento il punto 2 senza che vada in loop?
-
Ho provato cosė ma non va:
RewriteCond %{REQUEST_URI} ^/(en|it)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
RewriteCond %{REQUEST_URI} !^/(en|it)$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
se richiedo linkalsito/it (senza slash finale) dā errore di reindirizzamento..Se metto i due spezzoni a sč stanti (solo le prime tre righe o solo le seconde tre righe) fa quello che deve fare..
mmm..ho capito che č la quarta riga che non va..se richiedo it/ levo lo slash, ma va poi in conflitto con la prima riga..
-
Ho risolto cosė, magari torna utile ad altri.
RewriteCond %{REQUEST_URI} ^/(en|it)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
RewriteCond %{REQUEST_URI} ^/(en/|it/)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .? - [S=1]
RewriteRule ^(.*)/$ /$1 [L,R=301]